ALGORITHM/OTHER

[c++] 폰켓몬 (set, map)

느리님 2021. 5. 10. 19:14

https://programmers.co.kr/learn/courses/30/lessons/1845

 

코딩테스트 연습 - 폰켓몬

당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.

programmers.co.kr

 

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

int solution(vector<int> nums)
{
    set<int> s;
    int answer = 0;
    for (int i=0; i<(int)nums.size(); i++) {
        s.insert(nums[i]);
    }
    
    if ((int)s.size() <= (int)nums.size() / 2) {
        answer = (int)s.size();
    }
    else {
        answer = (int)nums.size() / 2;
    }
    return answer;
}

 

다른 사람 코드를 보기 굉장히 쉽게 해놔서.. 보면서 공부하는데 좋을 것 같다.. ㅇㅅㅇ

역시 짧은 코드가 제일 눈에 띄인다.

이제보니 좋아요 순으로 해놨네?! 

 

unordered_map 을 쓰신분과

unordered_set 을 쓰신분이 있다.

 

코드 진짜 깔끔하다... 

 

배울점을 따로 정리해야겠따