其他分享
首页 > 其他分享> > CCF相反数

CCF相反数

作者:互联网

题目

在这里插入图片描述

思路

使用哈希表,在对数组中的每个数进行遍历前先将其取绝对值,然后在哈希表中是否已经存在该值,如果有则+1,没有则添加到哈希表中。

代码

#include<iostream>
#include<stdio.h>
#include<math.h>
#include<unordered_map>
using namespace std;
#define N 510
int main(){
    int arr[N];
    int n;

    scanf("%d",&n);
    for(int i=0;i<n;i++){
        scanf("%d",&arr[i]);
    }

    int result=0;
    unordered_map<int,int> map;
    for(int i=0;i<n;i++){
        int temp=abs(arr[i]);

        if(map.find(temp)!=map.end()){
            result++;
        }
        map[temp]++;
    }
    printf("%d",result);
    return 0;
}

标签:map,arr,include,int,result,哈希,CCF,相反数
来源: https://blog.csdn.net/heiana/article/details/123060409