unordered_map 2

[프로그래머스] 신고 결과 받기 with C++

문제 설명 제한 사항 및 입출력 예제 개념 id_list에 포함된 사용자가 신고 결과 이메일을 얼마나 많이 받았는지 파악하는 문제다. 각 신고 처리 내역은 "신고자 신고할 사람"의 형식으로 제시된다. 단, 본 문제에서 핵심적인 고려 사항은 동일한 사용자에 대한 중복 신고가 단 한 번의 신고로만 처리된다는 점이다. 따라서, 동일한 대상에 대한 다수의 신고가 있더라도 이를 단일 신고로 간주하며, 이는 신고 결과 이메일의 수를 결정하는 데 중요한 요소가 된다는 점을 놓치면 안 된다. 따라서 map 자료구조를 활용하여 "신고자" "신고한 사람"의 형태의 쌍을 받아 처리할 수 있다. 각 신고자를 키로 설정하고, 신고한 사람을 값으로 설정한다. 동일한 신고자가 동일한 신고한 사람을 여러 번 신고하더라도, map 구..

[백준] 2108 통계학 with C++

문제설명 입출력 예제 개념 다양한 수를 처리하는 문제다. 산술 평균, 중앙값, 범위는 간단하게 해결할 수 있지만, 최빈값을 처리하는 과정이 까다롭고, 시간 초과에 자주 걸리므로 알고리즘 최적화를 잘해야 한다. 풀이 #include #include #include #include #include using namespace std; int main() { int N, sum = 0; cin >> N; vector v(N); unordered_map freq; 수의 개수 N, 산술 평균을 계산하기 위한 sum, 중앙값과 범위를 계산하기 위한 벡터 v, 최빈값을 계산하기 위한 해시맵 freq를 초기화한다. for (int i = 0; i > v[i]; sum += v[i]; fr..

Algorithm/백준 2023.05.04