CSP:相反数

试题编号:201403-1

试题名称:相反数

时间限制:1.0s

内存限制:256.0MB

问题描述

  有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。

输入格式

  第一行包含一个正整数 N。(1 ≤ N ≤ 500)。
  第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过1000,保证这些整数各不相同。

输出格式

  只输出一个整数,即这 N 个数中包含多少对相反数。

样例输入

5
1 2 3 -1 -2

样例输出

2

#include<iostream>
using namespace std;
const int maxx=10010;
int n,x,ans,a[maxx],b[maxx];
int main()
{
	cin>>n; 
	for(int i=1;i<=n;i++) 
	{
		cin>>x;
		if(x>0)a[x]++;
		else b[-x]++;
	}
	for(int i=1;i<=maxx;i++)
	if(a[i]&&b[i])
	ans++;
	cout<<ans;
	return 0;
}
发布了277 篇原创文章 · 获赞 222 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/cax1165/article/details/90610068