201403-1

来源:互联网 发布:windows搭建redis集群 编辑:程序博客网 时间:2024/06/03 21:45

试题编号:
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;int main(){    int num[1005] = {0};    int count = 0;    int n;    cin >> n;    for(int i = 0; i < n; i++)    {        int x;        cin >> x;        if(x>0)        {            if(num[x] == -1)            {                count++;            }            num[x] = 1;        }else        {            if(num[-x] == 1)            {                count++;            }            num[-x] = -1;        }    }    cout << count;    return 0;}