[LeetCode]575. Distribute Candies
题目描述
思路
判断实际有几种糖果,和期望分到的最大糖果数比较
返回比较小的数
实际上是用哈希去重的过程
代码
#include <iostream>
#include <vector>
#include <unordered_map>
using namespace std;
class Solution {
public:
int distributeCandies(vector<int>& candies) {
unordered_map<int, int> um;
for (int num : candies)
++um[num];
int maxCount = candies.size() >> 1,
realCount = um.size();
return realCount < maxCount ? realCount : maxCount;
}
};
int main() {
vector<int> candies = { 1,1,2,3 };
Solution s;
cout << s.distributeCandies(candies) << endl;
system("pause");
return 0;
}