주소
코드 & 풀이
#include <vector>
#include <unordered_map>
using namespace std;
int solution(vector<int> array) {
unordered_map<int, int> freq;
for (int num : array) freq[num]++;
int max_cnt = 0, mode = -1;
bool is_duplicate = false;
for (auto &[num, count] : freq){
if(count > max_cnt){
max_cnt = count;
mode = num;
is_duplicate = false;
} else if(count == max_cnt){
is_duplicate = true;
}
}
return is_duplicate ? -1 : mode;
}
unordered_map과 auto에 대해 배웠습니다.
unordered_map은
키(key)-값(value) 쌍을 저장하는 C++ STL 컨테이너로, 해시 테이블을 기반으로 동작합니다.
map과의 차이점 = 정렬되지 않는다.
탐색 속도 = O(1)
auto 키워드는
컴파일러가 변수의 타입을 자동으로 추론하도록 도와줍니다.
C++ 11부터 도입되어 반복문, 람다 함수, 템플릿 코드에서 유용합니다.
결국 int, double, string 을 안 쓰고
auto를 쓰면
알아서 데이터타입을 추론해주는 겁니다.
728x90
'프로그래머스 > Lv.0' 카테고리의 다른 글
배열 두 배 만들기 - C++, vector, 참조(&), 반복문 (0) | 2025.02.22 |
---|---|
문자 개수 세기 - Python, ord (0) | 2024.11.24 |
캐릭터의 좌표 - Python, 구현 (1) | 2024.11.13 |
평행 - Python, 기울기, 비구조화 할당 (1) | 2024.11.13 |
안전지대 - Python, 구현, set (0) | 2024.11.13 |