문제 링크 : https://www.acmicpc.net/problem/7785
7785번: 회사에 있는 사람
문제 상근이는 세계적인 소프트웨어 회사 기글에서 일한다. 이 회사의 가장 큰 특징은 자유로운 출퇴근 시간이다. 따라서, 직원들은 반드시 9시부터 6시까지 회사에 있지 않아도 된다. 각 직원��
www.acmicpc.net
사람 이름과 출퇴근 로그(enter, leave)가 주어지면, 현재 누가 남아있는지를 출력하는 문제입니다. 로그에 이름이 있는 사람에 대해 dictionary를 만들고, 출근한 경우에는 출근한 사람의 이름을 key로 하는 key-value pair를 만들어 저장, 퇴근한 경우에는 그 사람이 key로 있는 pair를 삭제합니다. 마지막으로 key에 저장된 모든 사람들의 이름을 sorting 후 출력하면 됩니다.
import sys
n = int(sys.stdin.readline())
lst = []
for _ in range(n):
lst.append(list(map(str, sys.stdin.readline().split())))
log_dict = {}
for log in lst:
if log[1] == 'enter': #출근
log_dict[log[0]] = 1
elif log[1] == 'leave': #퇴근
del log_dict[log[0]]
name = sorted(log_dict.keys(), reverse=True) #현재 회사에 있는 모든 사람
for na in name:
print(na)
'알고리즘 문제풀이 > 백준' 카테고리의 다른 글
2667번 - 단지번호붙이기(python3) (0) | 2020.08.17 |
---|---|
17298번 - 오큰수(python3) (0) | 2020.08.02 |
2493번 - 탑(python3) (0) | 2020.08.02 |
17212번 - 달나라 토끼를 위한 구매대금 지불 도우미(python3) (0) | 2020.08.02 |
12865번 - 평범한 배낭(python3) (0) | 2020.07.30 |