Codeforces Round #544 (Div. 3) D. Zero Quantity Maximization

晚上复习完高数,瞧了眼qq,发觉今天有div3,然后发现了这么道题好多人wa了,于是乎自己也写了一发,然后成功的wa了,2333333

wa掉的地方很简单,就是最后的ans我给他初始化成a_i,b_i皆为0的个数了,23333,改成0就ac了

这题本质不难,就是y=kx+b的变形

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=2e5+5;
int a[maxn],b[maxn];
int main()
{
    int n;
    scanf("%d",&n);
    for(int i=0;i<n;i++) scanf("%d",&a[i]);
    for(int i=0;i<n;i++) scanf("%d",&b[i]);
    int cnt=0;
    map<pair<int,int>,int> mp;
    for(int i=0;i<n;i++)
    {
        if(!a[i])
        {
            if(!b[i]) cnt++;
        }
        else
        {
            int gcd=__gcd(a[i],b[i]);
            a[i]/=gcd,b[i]/=gcd;
            if(a[i]>0) a[i]=-a[i],b[i]=-b[i];
            mp[make_pair(a[i],b[i])]++;
        }
    }
    int Max=0;
    for(auto x:mp) Max=max(Max,x.second);
    printf("%d\n",Max+cnt);
}