자기개발👨‍💻/코딩 알고리즘

[python] 백준 7785 회사에 남은 사람 (런타임에러-> 해결)

천숭이 2020. 7. 8. 16:10
#----7785 회사에 남은 사람
inp = int(input())
office=[]
for i in range(inp):
    x=input()
    name,status = x.split()
    if status == "enter":
        office.append(name)
    elif status =="leave":
        if name in office:
           office.remove(name) 
        
office.sort(reverse = True)
for i in office:
    print(i)

런타임,,에러,,

 


#----7785 회사에 남은 사람 딕셔너리 사용해보기
n=int(input())

result ={}
a=[]
for i in range(n):
    name,state = input().split()    #(1)

    if name in result :
        del result[name]
    else:
        result[name]=state          #(2)
        
for i in result :
    a.append(i)
a.sort(reverse=True)
for i in a:
    print(i)

사람들의 도움으로 딕셔너리를 알게되고, 딕셔너리를 사용해 해결.

문장으로 받고 바로 딕셔너리에 저장하는 과정이 필요없다는 점이 신기. (1)

딕셔너리 값을 추가할때는 append같은 리스트 함수가 필요하지 않고

dic[key]= value로만 해결하면 된다  (2)