#include<bits/stdc++.h>
using namespace std;
long long int ss,kk;
int s[15],b[15],n,flag[15],z=0,a[15],ans=10000,sb=1;
void dfs(int step){
if(step>z/n+1){
ss=1;
kk=0;
for(int i=1;i<=step-1;i++){
ss*=s[a[i]];
kk+=b[a[i]];
}
if(ans>max(ss,kk)-min(ss,kk)) ans=max(ss,kk)-min(ss,kk);
z++;
return ;
}
for(int i=1;i<=n;i++){
if(flag[i]==0){
flag[i]=1;
a[sb]=i;
sb++;
dfs(step+1);
flag[i]=0;
sb--;
}
if(i==n&&z/n+1<n) i=1;
}
}
int main(){
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d%d",&s[i],&b[i]);
}
dfs(1);
printf("%d",ans);
}