반응형
문제
https://www.acmicpc.net/problem/7785
코드
import sys
input = sys.stdin.readline
n = int(input())
man = {}
for i in range(n):
a, b = input().split()
if b == 'enter':
man[a] = b
else:
del man[a]
ans = man.keys()
for i in sorted(ans, reverse = True):
print(i)
설명
우선 출입을 관리할 딕셔너리를 하나 생성해 준다.
이후 n의 횟수만큼 반복문을 돌아준다.
만약 누군가가 enter 했다면,
딕셔너리에 a를 enter로 기록한다.
그렇지 않다면(leave라면),
딕셔너리에 있는 a를 제거해 준다.
이후 key 값을 다른 리스트로 만들어주고,
사전의 역순으로 출력해야 하므로 reverse = True를 통해 정렬하여 출력한다.
반응형
'개발 연습장 > 백준 문제풀이' 카테고리의 다른 글
[파이썬, Python] 백준 15651: N과 M (3) (0) | 2023.04.28 |
---|---|
[파이썬, Python] 백준 11656: 접미사 배열 (0) | 2023.04.27 |
[파이썬, Python] 백준 14501: 퇴사 (0) | 2023.04.25 |
[파이썬, Python] 백준 2217: 로프 (0) | 2023.04.24 |
[파이썬, Python] 백준 1904: 01타일 (0) | 2023.04.21 |