- 首先是字典排序的过程,如下所示:使用lambda函数并用元祖可以指定排序优先级,乘以负号代表按由大到小排序,否则按由小到大排序。
member['a']=[2,3]
member['b']=[2,3]
member['c']=[3,1]
member['d']=[2,4]
c=sorted(member.items(), key=lambda x:(-1*x[1][0],-1*x[1][1],-1*x[0]))
- 然后记录每位成员及其在线状态,按照value以及key的优先级排序:
member={}
a = int(sys.stdin.readline().strip())
for i in range(a):
inputLine = input()
listLine = inputLine.split(' ')
member[listLine[1]]=[0,int(listLine[0])]
n = int(sys.stdin.readline().strip())
for i in range(n):
inputLine=input()
listLine=inputLine.split(' ')
member[listLine[0]][0]=int(listLine[1])
print(member)
c=sorted(member.items(), key=lambda x:(x[1][0],-1*x[1][1],-1*x[0]))
for i in range(4):
print(c[i][0])