CodingTest/Baekjoon
[baekjoon] 백준 7785번(파이썬): 회사에 있는 사람
JunJangE
2021. 10. 11. 13:15
문제
7785번: 회사에 있는 사람
첫째 줄에 로그에 기록된 출입 기록의 수 n이 주어진다. (2 ≤ n ≤ 106) 다음 n개의 줄에는 출입 기록이 순서대로 주어지며, 각 사람의 이름이 주어지고 "enter"나 "leave"가 주어진다. "enter"인 경우는
www.acmicpc.net
알고리즘
- 반복문을 통해 출입 기록을 확인한다.
- 방문자의 출퇴근 여부를 통해 방문자를 추가하거나 제거한다.
- 사전 순의 역순으로 정렬하여 출력한다.
코드
import sys
n = int(sys.stdin.readline())
temp = dict() # 딕셔너리 형
# 반복문을 통해 출입 기록울 확인한다.
for _ in range(n):
a, b = map(str, sys.stdin.readline().split())
# 출입을 했으면 딕셔너리로 받는다.
if b == "enter":
temp[a] = b
# 퇴근을 했으면 삭제해준다.
else:
del temp[a]
# 사전 순의 역순으로 정렬한다.
temp = sorted(temp.keys(), reverse=True)
for i in temp:
print(i)
github
GitHub - junjange/CodingTest: 내가 푼 코딩 테스트 문제와 해결법
내가 푼 코딩 테스트 문제와 해결법. Contribute to junjange/CodingTest development by creating an account on GitHub.
github.com