我这种不考虑gcd的代码都可以ac
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=2e5+6;
int n,x[N],y[N];
#define tul tuple<int,int,int>
void solve(){
cin>>n;
for(int i=1;i<=n;++i) cin>>x[i]>>y[i];
map<tul,int> v;
for(int i=1;i<=n;++i){
for(int j=1;j<=n;++j){
if(i!=j){
int k=y[j]-y[i],b=y[i]*x[j]-y[j]*x[i],d=x[j]-x[i];
if(d<0) k*=-1,b*=-1;
v[{k,b,d}]++;
}
}
}
int ma=0;
for(auto[vt,h]:v){
//cout<<get<0>(vt)<<" "<<get<1>(vt)<<" "<<get<2>(vt)<<" "<<h<<endl;
ma=max(h,ma);
}
cout<<ma+1<<endl;
}
signed main(){
int t=1;
//cin>>t;
while(t--)
solve();
return 0;
}