#include #include using namespace std; int N; long D[15]; long X,Y; long f(long d) { if(X%d==0&&Y%d==0) { return max(X/d,Y/d); } else if(X%d==0) { if(X>=d)return max(X/d,Y/d+1); else return max(2L,Y/d+1); } else if(Y%d==0) { if(Y>=d)return max(X/d+1,Y/d); else return max(X/d+1,2L); } else { if(X>=d&&Y>=d)return max(X/d+1,Y/d+1); else if(X>=d)return X/d+1; else if(Y>=d)return Y/d+1; else return 2; } } main() { cin>>N; for(int i=0;i>D[i]; cin>>X>>Y; if(X<0)X=-X; if(Y<0)Y=-Y; long ans=9e18; for(int i=0;i