https://codeforces.com/contest/1133/problem/D
注意long double
d可以为0 d为实数
d=-b[i]/a[i];
long double a[maxn],b[maxn];
vector<long double> v;
int main(){
cin>>n;
rep(i,1,n){
cin>>a[i];
}
rep(i,1,n){
cin>>b[i];
}
for(int i=1;i<=n;i++){
if(a[i]==0 && b[i]==0)
cnt++; //a[i]==0 b[i]!=0 凑不出全为0 a[i]!=0 b[i]==0 也凑不出
else if(a[i]!=0)
v.pb(b[i]/a[i]); //公比
}
sort(v.begin(),v.end());
// for(auto k:v)
// cout<<k<<" ";
// cout<<endl;
ans=1;
for(int i=1;i<=v.size();i++){ //第一个位置为0 默认用公比将它们变为0
if(v[i-1]==v[i])
ans++;
else{
res=max(ans,res);
ans=1;
}
}
cout<<res+cnt<<endl; //求最大连续公比数
return 0;
}