XDU 1138 祯爷的苹果

View Code
 1 #include<stdio.h>
2 #include<stdlib.h>
3 #include<string.h>
4 #include<iostream>
5 #include<map>
6 using namespace std;
7 map<long long ,long long> apple;
8 int main(void)
9 {
10 long long n,m,t;
11 cin>>t;
12 while(t--)
13 {
14 scanf("%lld %lld",&n,&m);
15 long long i,value;
16 apple.clear();
17 for(i=0;i<n;i++)
18 {
19 scanf("%lld",&value);
20 apple[value]++;
21 }
22 long long ans=0;
23 map<long long,long long>::iterator iter=apple.begin();
24 for(;iter!=apple.end();iter++)
25 {
26 if(iter->first==m-iter->first)ans+=(iter->second)*(iter->second-1);
27 else
28 ans+=(iter->second)*(apple[m-iter->first]);
29 }
30 cout<<ans/2<<endl;
31 }
32 return 0;
33 }

 

posted on 2011-12-03 13:23  lonelycatcher  阅读(285)  评论(0编辑  收藏  举报

导航