题解 | #不同的体重#
不同的体重
https://www.nowcoder.com/practice/4a6411ef749445e88baf7f93d1458505
知识点
hash,STL(MAP,SET)
思路
首先,我们建立map用于记录从体重到对应体重数量的映射,遍历arr数组来维护map的value值。
然后,我们使用set来去重集合,若某个体重的牛的数量未出现在set中过,则加入set,否则返回false
最后,若没有返回false,则返回true
代码c++
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param arr int整型vector
* @return bool布尔型
*/
bool uniqueOccurrences(vector<int>& arr) {
// write code here
map<int,int>cow;
set<int>num;
for(auto v:arr)
{
cow[v]++;
}
for(auto v:cow)
{
if(num.count(v.second)==0)num.insert(v.second);
else return false;
}
return true;
}
};