#include <algorithm>
#include <cstdio>
#include <cmath>
using namespace std;
int a[15],b[15],n,ans=1<<30;
void dfs(int i,int sj,int th){
if(i>n){
if(!th)
return ;
ans=min(ans,abs(sj-th));
return ;
}
dfs(i+1,sj,th);
dfs(i+1,sj*a[i],th+b[i]);
}
int main(){
int i;
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d %d",&a[i],&b[i]);
dfs(1,1,0);
printf("%d",ans);
return 0;
}
void dfs(int x)
{
if(x>n)
{
}
else
{
for(int i=1;i<=n;i++)
{
if(f[i]==0)
{
c*=s[i];
y+=b[i];
ans=min(ans,abs(c-y));
f[i]=1;
dfs(x+1);
f[i]=0; c/=s[i]; y-=b[i];
}
}
}
}
void dfs(int x)
{
if(x!=1)
ans=min(ans,abs(c-y));
if(x>n)
{
}
else
{
for(int i=1;i<=n;i++)
{
if(f[i]==0)
{
c*=s[i]; y+=b[i]; f[i]=1;
dfs(x+1);
f[i]=0; c/=s[i]; y-=b[i];
}
}
}
}