본문 바로가기

코딩 테스트/프로그래머스

[프로그래머스 Level 1, C++] 포켓몬

728x90
반응형

문제: 포켓몬


풀이 방법

뭔가 되게 긴데 처음에는 어떻게 풀어야할지 몰랐었다.

진짜 모르겠어서 질문하기를 봤는데 min이랑 set을 쓰라고 한다.

진짜 뭔 말인지 몰랐는데 입출력 예를 보니까 뭔가 말이 되는 것 같아서 set이랑 min을 이용하고

입출력 예를 그대로 따라 만들어봤다.

 

set을 만들고 거기다가 포켓몬을 다 넣어서 set의 사이즈를 리던하니까 실패가 되는 것도 있고 아닌 것도 있어서

min을 넣고 n/2랑 비교해서 return 해봤더니 되더라...


소스 코드

#include <vector>
#include <set>
using namespace std;

int solution(vector<int> nums)
{
    int answer = 0;
    set<int> s;
    for(auto & i : nums) {
        s.insert(i);
    }
    answer = min(s.size(), nums.size()/2);
    return answer;
}
728x90
반응형