CCF——相反数

Posted Fmm-PMO

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CCF——相反数相关的知识,希望对你有一定的参考价值。

问题描述
  有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。
输入格式
  第一行包含一个正整数 N。(1 ≤ N ≤ 500)。
  第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过1000,保证这些整数各不相同。
输出格式
  只输出一个整数,即这 N 个数中包含多少对相反数。
样例输入

5
1 2 3 -1 -2

样例输出

2

线上没考完的试终于在今天结束了,舒服啊(考的自我感觉一般。。)如果一个数的绝对值出现了两次,则说明存在一对相反数,因为题目保证所有的数都不相同
#include <iostream>
#include <cmath>
using namespace std;

int a[1010];

int main() 
    int n, num, cnt = 0;
    cin >> n;
    for (int i = 0; i < n; i++) 
        cin >> num;
        a[abs(num)]++;
        if (a[abs(num)] == 2) cnt++;
    
    cout << cnt;
    return 0;

以上是关于CCF——相反数的主要内容,如果未能解决你的问题,请参考以下文章

CCF - 201403-1 - 相反数

CCF 201403-1 相反数

CCF_201403-1_相反数

CCF201403-1 相反数(100分)序列处理

算法题CCF CSP 1403-1

CSP201403-1:相反数