CCF 201403-1 相反數
阿新 • • 發佈:2017-10-14
span 多少 round bsp align font 1.0 cell 個數
試題編號: | 201403-1 |
試題名稱: | 相反數 |
時間限制: | 1.0s |
內存限制: | 256.0MB |
問題描述: |
問題描述
有 N 個非零且各不相同的整數。請你編一個程序求出它們中有多少對相反數(a 和 -a 為一對相反數)。
輸入格式
第一行包含一個正整數 N。(1 ≤ N ≤ 500)。 第二行為 N 個用單個空格隔開的非零整數,每個數的絕對值不超過1000,保證這些整數各不相同。 輸出格式 只輸出一個整數,即這 N 個數中包含多少對相反數。 樣例輸入 5 1 2 3 -1 -2 樣例輸出 2 |
關鍵詞:map鍵值對
1 #include<iostream> 2#include<map> 3 #include<cmath>//要包含 4 using namespace std; 5 int main(){ 6 //freopen("in2.txt","r",stdin); 7 int n; 8 cin >> n; 9 map<int,int> m; 10 for(int i = 0;i<n;i++){ 11 int buf; 12 cin >> buf; 13 m[abs(buf)]++; 14} 15 int total = 0; 16 for(map<int,int>::iterator it = m.begin();it!=m.end();it++){ 17 if(it->second > 1){ 18 total++; 19 } 20 } 21 cout << total; 22 return 0; 23 }
CCF 201403-1 相反數