1207. 独一无二的出现次数

发布时间 2023-06-25 16:36:19作者: xiazichengxi

给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数。

如果每个数的出现次数都是独一无二的,就返回 true;否则返回 false。


示例 1:

输入:arr = [1,2,2,1,1,3]
输出:true
解释:在该数组中,1 出现了 3 次,2 出现了 2 次,3 只出现了 1 次。没有两个数的出现次数相同。

> 代码


class Solution {
public:
    bool uniqueOccurrences(vector<int>& arr) {
        int count[2001] = {0};
        //统计次数
        for(int i = 0;i < arr.size();i++){
            count[arr[i]+1000]++;
        }

        bool fre[1001] = {false}; // 看相同频率是否重复出现
        for (int i = 0; i <= 2000; i++) {
            if (count[i]) {
                if (fre[count[i]] == false) fre[count[i]] = true;
                else return false;
            }
        }
        return true;
    }
};