我有以下声明:
有两种类型的命令:
store
email_content
urgency
,其中email_content
是由[a-zA-Z0-9_]和urgency
组成的字符串,是一个正整数< / p>
get_next_email
- 请求最紧急的email_content
作为回复。如果有1个以上具有相同紧急程度的电子邮件,请输出先存储的电子邮件。如果没有未完成的电子邮件打印&#34; -1&#34;换行符上的字符串。
输入示例:
4
store email1 1
store email2 10
store email3 10
get_next_email
输出:
email2
我的代码:
emails = {}
urgencies = set()
for _ in range(int(input())):
info = input().strip().split(" ")
if info[0] == "store":
info[2] = int(info[2])
urgencies.add(info[2])
if info[2] in emails:
emails[info[2]].append(info[1])
else:
emails[info[2]] = [info[1]]
elif info[0] == "get_next_email":
if emails:
maxval = max(urgencies)
print(emails[maxval].pop(0))
if emails[maxval] == []:
emails.pop(maxval, None)
urgencies.remove(maxval)
else:
print("-1")
我遇到了一个运行时错误,根据我所读到的内容,这是因为复杂性非常大,而且我认为我的代码 复杂。我究竟做错了什么?我该怎么做才能改善这一点?谢谢!
编辑:这是一场比赛,确切的错误是:由于超时(10s)终止