Artigo Diretório
1. Título
https://tianchi.aliyun.com/oj/118289365933779217/122647324212270016
Descrição:
dada uma matriz de inteiros de comprimento par , diferentes números na matriz representam diferentes tipos de doces, e cada número representa um tipo de doces.
Você precisa dividir esses doces igualmente entre o irmão e a irmã mais novos. Retorne a quantidade máxima de doces que a irmã pode obter .
O intervalo de comprimento da matriz fornecida é [2, 10.000] e é um número par.
O intervalo de números na matriz fornecida é [-100.000, 100.000].
示例
输入: candies = [1,1,2,2,3,3]
输出: 3
解释:
有三种不同的糖果(1, 2 and 3), 每种糖果有两个。
最佳分法:妹妹拥有[1,2,3] ,弟弟也会拥有拥有[1,2,3]。
妹妹拥有3种不同的糖果。
2. Resolução de problemas
- Defina a eliminação da duplicação, dependendo de quantos tipos existem, no máximo não pode exceder a metade do comprimento da matriz
class Solution {
public:
/**
* @param candies: a list of integers
* @return: return a integer
*/
int distributeCandies(vector<int> &candies) {
// write your code here
unordered_set<int> s;
for(auto c : candies)
s.insert(c);
return min(candies.size()/2, s.size());
}
};
O endereço do meu blog CSDN https://michael.blog.csdn.net/
Pressione e segure ou escaneie o código QR para acompanhar minha conta oficial (Michael Amin), torcer juntos, aprender e progredir juntos!