[C++로 풀이] 폰켓몬⭐⭐
카테고리: Programmers
태그: Coding Test Algorithm
📌 폰켓몬
난이도 ⭐⭐
🚀 문제
🚀 내 풀이 ⭕
#include <vector>
#include <unordered_map>
using namespace std;
int solution(vector<int> nums){
int answer = 0;
unordered_map<int, int> m;
for(int i = 0; i < nums.size(); i++)
m[nums[i]]++;
if (nums.size() / 2 >= m.size())
answer = m.size();
else
answer = nums.size() / 2;
return answer;
}
m
: 종류가 Key 로, 그 종류의 해당하는 폰켓몬 마리수가 Value에 담김nums.size() / 2
마리만 선택할 수 있으므로- if (nums.size() / 2 >= m.size()) 종류 수보다 선택할 수 있는 마리수가 더 많으면
answer
는 폰켓몬 종류 수가 된다. - else 종류 수보다 선택할 수 있는 마리수가 더 적으면
answer
는 선택할 수 있는 마리수가 된다.
- if (nums.size() / 2 >= m.size()) 종류 수보다 선택할 수 있는 마리수가 더 많으면
🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄
댓글 남기기