#include<bits/stdc++.h>
#define N 11111111
using namespace std;
int n,a,b;
int sum,f[N],pos,ans;
int main(){
memset(f,0x7f7f7f7f,sizeof(f));
f[0]=0;
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin>>n;
for(int i=1;i<=n;i++){
cin>>a>>b;
sum+=a+b;
for(int i=sum;i>=0;i--){
if(f[i]!=0x7f7f7f7f){
f[i+a]=min(f[i+a],f[i]);
f[i+b]=min(f[i+b],f[i]+1);
f[i]=0x7f7f7f7f;
}
}
}
pos=sum/2;
if(pos%2==0){
for(int i=0;i<pos;i++){
ans=min(f[pos-i],f[pos+i]);
if(ans!=0x7f7f7f7f){
cout<<ans<<endl;
return 0;
}
}
}
else{
for(int i=1;i<=pos;i++){
ans=min(f[pos-i+1],f[pos+i]);
if(ans!=0x7f7f7f7f){
cout<<ans<<endl;
return 0;
}
}
}
return 0;
}