반응형
https://programmers.co.kr/learn/courses/30/lessons/42576
간단하게 hash 자료구조를 사용하는 문제였습니다.
풀이방법 :
1. 동명이인이 있을 수 있으므로 동명이인에 대해 count++를 진행합니다.
2. 완주자명단을 읽으며 count--
3. 참여자 명단들 중 완주자명담을 제한 count가 0보다 큰 인원은 완주를 못한 것이 됩니다.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
|
#include <iostream>
#include <string>
#include <vector>
#include <map>
using namespace std;
string solution(vector<string> participant, vector<string> completion) {
map <string,int> m;
for (int i = 0; i < participant.size(); i++) m[participant[i]]++;
for (int i = 0; i < completion.size(); i++) m[completion[i]]--;
for (int i = 0; i < participant.size(); i++) if (m[participant[i]]>0) return participant[i];
}
|
'Algorithm > Implementation' 카테고리의 다른 글
(Python) - 백준(BOJ) 16829번 : Hashing 답 (0) | 2020.08.23 |
---|---|
(Python) - 프로그래머스(Programmers) : 전화번호 목록 답 (0) | 2020.08.16 |
(C++) - 백준(BOJ) 2896번 : 무알콜 칵테일 답 (0) | 2020.07.24 |
(C++) - 백준(BOJ) 11866번 : 요세푸스 문제 0 (0) | 2020.07.24 |
(C++) - 백준(BOJ) 1259번 : 팰린드롬수 (0) | 2020.07.08 |