반응형
문제
상근이는 세계적인 소프트웨어 회사 기글에서 일한다. 이 회사의 가장 큰 특징은 자유로운 출퇴근 시간이다. 따라서, 직원들은 반드시 9시부터 6시까지 회사에 있지 않아도 된다.
각 직원은 자기가 원할 때 출근할 수 있고, 아무때나 퇴근할 수 있다.
상근이는 모든 사람의 출입카드 시스템의 로그를 가지고 있다. 이 로그는 어떤 사람이 회사에 들어왔는지, 나갔는지가 기록되어져 있다. 로그가 주어졌을 때, 현재 회사에 있는 모든 사람을 구하는 프로그램을 작성하시오.
문제풀이
import sys
input = sys.stdin.readline
tmp=dict()
for _ in range(int(input())):
a,b=map(str,input().split())
#01
if b=="enter":
tmp[a]=b
#02
if b=="leave":
del tmp[a]
#03
tmp=sorted(tmp.keys(),reverse=True)
for i in tmp:
print(i)
- #01 : b값이 enter이면 tmp[a]에 b를 저장한다. 사실 tmp[a]를 만드는 것 자체에 의미가 있다.
- #02 : b값이 leave이면 tmp[a]를 삭제한다.
- #03 : tmp의 key값을 사전 순의 역순으로 정렬한 후 한 줄에 하나씩 출력한다.
'프로그래밍 > 백준' 카테고리의 다른 글
[알고리즘] 백준 10990 파이썬 - 별 찍기 15 (0) | 2023.04.22 |
---|---|
[알고리즘] 백준 2445 파이썬 - 별 찍기 8 (1) | 2023.04.21 |
[알고리즘] 백준 7795 파이썬 - 먹을 것일가 먹힐 것인가 (2) | 2023.04.19 |
[알고리즘] 백준 2417 파이썬 - 정수 제곱근 (2) | 2023.04.18 |
[알고리즘] 백준 13706 파이썬 - 제곱근 (2) | 2023.04.17 |