记录编号 |
72916 |
评测结果 |
AAAAAAAAAAA |
题目名称 |
数对的个数 |
最终得分 |
100 |
用户昵称 |
cstdio |
是否通过 |
通过 |
代码语言 |
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;
}