2024年7连测第二场

A

link

如果想要\(x_1+y_2=x_2+y_1\),就是\(x_1-x_2=y_1-y_2\)即可,那么我们可以存一下每一个\(i\)\(x\)\(y\)的差,每到一个\(i\)就看一下前面有几个的差和它相等,这一个就可以和多少个组上对。

点击查看代码
#include<bits/stdc++.h>

using namespace std;

int n,ans;
int x[1000005],y[1000005];
int c[1000005];
map<int,int> mp;

signed main(){
	
	cin >> n;
	for(int i = 1;i <= n;++ i){
		scanf("%d %d",&x[i],&y[i]);
		c[i] = y[i]-x[i];
	}
	
	for(int i = 1;i <= n;++ i){
		ans += mp[c[i]];
		mp[c[i]]++;
	}
	
	cout << ans;
	
	return 0;
	
} 
posted @ 2024-09-15 20:48  校牌杀手  阅读(5)  评论(0编辑  收藏  举报