记录编号 72916 评测结果 AAAAAAAAAAA
题目名称 数对的个数 最终得分 100
用户昵称 Gravatarcstdio 是否通过 通过
代码语言 C++ 运行时间 0.139 s
提交时间 2013-10-19 18:05:32 内存使用 0.31 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<set>
#include<map>
using namespace std;
map<int,int> mp;
int n,C;
int ans=0;
void work(void){
	map<int,int>::iterator now,key;
	int x;
	for(now=mp.begin();now!=mp.end();now++){
		x=now->first;
		key=mp.find(x-C);
		//cout<<now->second<<endl;
		if(key!=mp.end()){
			ans+=now->second*key->second;
		}
	}
}
void read(void){
	map<int,int>::iterator key;
	scanf("%d%d",&n,&C);
	int i,a;
	for(i=1;i<=n;i++){
		scanf("%d",&a);
		key=mp.find(a);
		if(key==mp.end()) mp[a]=1;
		else key->second++;
	}
}
int main(){
	freopen("dec.in","r",stdin);
	freopen("dec.out","w",stdout);
	read();
	work();
	printf("%d\n",ans);
	return 0;
}