import sys
n = int(sys.stdin.readline())
result=[]
for i in range(n):
s = sys.stdin.readline().split()
if s[1] == 'enter':
result.append(s[0])
else:
result.remove(s[0])
for i in sorted(result,reverse=True):
print(i)
이런식으로 리스트를 만들고, append와 remove를 사용했는데 시간초과가 났다.
import sys
n = int(sys.stdin.readline())
people={}
for i in range(n):
name, status = sys.stdin.readline().split()
if status == 'enter':
people[name] = 'enter'
else:
if people[name]: # 이미 딕셔너리 안에 있는거면
del people[name]
for i in sorted(people,reverse=True):
print(i)
딕셔너리를 이용해 시간초과를 해결했다.