1차원 벡터를 입력받고 set을 이용하여 poketmon 변수에 포켓몬종류를 중복없이 삽입하였다.
set자료구조를 이용하면 값이 중복될 수 없다.
포켓몬종류를 count변수에 저장하고 포켓몬 수 / 2 와 비교하여 작은 수를 출력하면 된다.
문제풀이 도중 4개의 입력값을 nums로 받았을 때 nums.size()의 값이 visual studio에서는 16으로 나왔는데 프로그래머스에서는 4가 나와서 문제가 있었다.
#include <vector>
#include <set>
using namespace std;
int solution(vector<int> nums)
{
int answer = 0;
int count = 0;
set<int> poketmon;
for (int i = 0; i < nums.size(); i++)
{
poketmon.insert(nums[i]);
}
for (int p : poketmon)
{
count++;
}
if (nums.size() / 2 > count)
return count;
else
return nums.size() / 2;
}
'ALGORITHM > 프로그래머스' 카테고리의 다른 글
프로그래머스(레벨2) JadenCase 문자열 만들기 (0) | 2023.09.12 |
---|---|
(프로그래머스 레벨1) 약수의 합 (0) | 2023.08.24 |
(프로그래머스 레벨 1)나머지가 1이 되는 수 찾기 (0) | 2023.08.24 |
(프로그래머스 레벨 1)크기가 작은 부분 문자열 (0) | 2023.08.24 |
추억점수 (0) | 2023.08.16 |