[프로그래머스 C++]/LEVEL 0
[프로그래머스 C++] 최빈값 구하기
AKI(JUNI)
2024. 4. 12. 21:21
◈ 문제 설명
◈ 문제 설명 링크
코딩테스트 연습 - 최빈값 구하기 | 프로그래머스 스쿨 (programmers.co.kr)
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
◈ 작성 코드
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int solution(vector<int> array)
{
int answer = 1;
vector <int> ace;
int c = 0;
int max = 0;
int t = 0;
sort(array.begin(), array.end());
for(int i = 0; i < array.size(); i++)
{
if(i == 0)
{
t = array[i];
c = 1;
max = 1;
ace.push_back(t);
}
else
{
if(array[i] == t)
{
c++;
}
else
{
t = array[i];
c = 1;
}
if(max < c)
{
ace.clear();
ace.push_back(array[i]);
max = c;
}
else if(max == c)
{
ace.push_back(array[i]);
}
}
}
if(ace.size() == 1)
{
answer = ace[0];
}
else
{
answer = -1;
}
return answer;
}