题解

凌艺樽  •  3个月前


#include <bits/stdc++.h>
#define IOS cin.tie(0);cout.tie(0);ios::sync_with_stdio(false)
const int N=2e3+10;
using namespace std;
int sum[N],dif[N];
int n,ans,x,y;
int main()             
{     
    cin>>n;
    for(int i=1;i<=n;++i)
    {
    	scanf("%d%d",&x,&y);
    	sum[x+y]++;
    	dif[x-y+1000]++;//去同构数 
	}
	for(int i=1;i<=2005;++i)
	{
		if(sum[i]>1)
		{
			int c=(1+sum[i]-1)*(sum[i]-1)/2;
			ans+=c;
		}
		if(dif[i]>1)
		{
			int c=(1+dif[i]-1)*(dif[i]-1)/2;
			ans+=c;
		}
	}
	cout<<ans;
    return 0;
}

评论: