알고리즘 문제 풀이: 파이썬/BOJ

[BOJ] 회사에 있는 사람

hueco 2022. 5. 29.

 

문제 링크: https://www.acmicpc.net/problem/7785

 

7785번: 회사에 있는 사람

첫째 줄에 로그에 기록된 출입 기록의 수 n이 주어진다. (2 ≤ n ≤ 106) 다음 n개의 줄에는 출입 기록이 순서대로 주어지며, 각 사람의 이름이 주어지고 "enter"나 "leave"가 주어진다. "enter"인 경우는

www.acmicpc.net

 

내 풀이(Success):

 

내 풀이(Fail):

 

Review:

 위의 풀이에서 두 번째 풀이가 내가 처음 생각했던 로직대로 코드를 짜 본 것이고, 예시로 주어진 테스트 케이스는 성공했으나 문제를 맞히진 못했다. 그래서 질문 게시판을 보면서 반례가 있는지 확인을 해봤는데, '출근-퇴근-출근'인 경우에는 회사에 남아있는 사람으로 counting을 해야 하지만, 내 풀이에서는 집합으로 변환화는 과정에서 그 부분이 지워질 수 있기 때문에 틀렸던 것이다. 

 그래서 딕셔너리의 key와 value의 값을 서로 바꾸고, value 값(출퇴근 기록)이 홀수가 되는 경우('출근', '출근-퇴근-출근' 등)만 결과를 담을 리스트에 넣고, 역순으로 정렬 후 출력해서 문제를 해결할 수 있었다.

 

'알고리즘 문제 풀이: 파이썬 > BOJ' 카테고리의 다른 글

[BOJ_2776] 암기왕  (0) 2022.05.29
[BOJ_14425] 문자열 집합  (0) 2022.05.29
[BOJ_2002] 추월  (0) 2022.05.29
[BOJ_1021] 회전하는 큐  (0) 2022.05.17
[BOJ_1541] 읽허버린 괄호  (0) 2022.05.08

댓글