【CCF-CSP】201403-1 相反數(模擬)

【CCF-CSP】201403-1 相反數

題目

給出 n 個互不相同的數,求其中一共有多少相反數。

分析

記錄有哪些數字出現,遍歷數組每次 O1 查看相反數。

#include <bits/stdc++.h>
using namespace std;
#define d(x) cout<<x<<endl

typedef long long ll;
const int INF = 0x3f3f3f3f;
const int N = 2e3 + 10;

int n, ans, num;
int a[N], b[N];

int main() {
	scanf("%d", &n);
	for (int i = 0; i < n; i++) {
		scanf("%d", &a[i]); b[a[i]+1000]++;
	}
	for (int i = 0; i < n; i++) {
		if (b[-a[i] + 1000]) ans++;
	}
	printf("%d\n", ans >> 1);
	return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章