티스토리 뷰

n = int(input())
#딕셔너리로 받아서 value를 enter면 1을 넣고 leave면 0으로 바꾼다.
#최종으로 1이 있는 키 출력
room = {}
for tc in range(1,n+1):
    name,value = input().split()
    if value == 'enter':
        room[name] = 1
    else:
        room[name] = 0
res = []
for key,value in room.items():
    if value == 1:
        #사전 순의 역순으로 한 줄에 한 명씩 출력
        res.append(key)
res.sort(reverse=True)
for i in range(len(res)):
    print(res[i])

저번에 풀었던 9375_패션왕 신해빈에서 딕셔너리를 이용해 풀었던 것이 생각나서 바로 풀었다.

 

이름을 key로 받고 enter또는 leave를 value값으로 받아서 enter이면 1로 저장하고 leave이면 0으로 저장했다.

그러고 바로 출력해봤더니 조건이 하나 더 있었다. 사람의 이름을 사전 순의 역순으로 출력을 해야한다는 점이다.

 

그래서 value가 1이면 enter라고 저장되어있는 사람이니까 그 key값을 새로운 리스트res에 저장해줬다.

그리고 res리스트에 대해서 sort함수를 내림차순으로 사용했다.

출력은 res의 개수만큼 반복문으로 하나씩 출력했다.

'알고리즘 > 백준' 카테고리의 다른 글

[백준] 14916. 거스름돈 /Python  (0) 2021.05.08
[백준] 1004. 어린왕자 / Python  (0) 2021.05.06
[백준] 1026.보물 /Python  (0) 2021.05.02
[백준] 14501. 퇴사 /Python  (0) 2021.05.02
[백준] 2644 .촌수계산  (0) 2021.04.29
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함