输入在第1行给出不超过105的正整数N,即参赛人数。随后N行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号、及其比赛成绩(百分制),中间以空格分隔。
在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保证答案唯一,没有并列。
6<br/>3 65<br/>2 80<br/>1 100<br/>2 70<br/>3 40<br/>3 0
2 150
N = eval(input()) L = [[eval(j) for j in input().split()] for i in range(N)] D = {} for i in L: D[i[0]] = i[1] if i[0] not in D else D[i[0]] + i[1] RESULT = max(zip(D.keys(), D.values()), key = lambda i: i[1]) print(' '.join((str(i) for i in RESULT)))
# -*- coding : utf-8 -*- import operator n=int(input()) d={} for i in range(n): school,score=input().split() if school not in d.keys(): d[school]=0 d[school]+=int(score) else: d[school]=d[school]+int(score) d=sorted(d.items(),key=operator.itemgetter(1),reverse=True) print(d[0][0],d[0][1])
#Python保存为字典就好,然后使用字典的值进行排序 while True: try: num = int(input()) markDict = dict() for i in range(num): temp = input().split() if temp[0] not in markDict: #学校编号不在字典中,创建一个 markDict[temp[0]] = int(temp[1]) else: markDict[temp[0]] += int(temp[1]) #如果该学校编号已经存在,把成绩加进去 result = sorted(markDict.items(),key=lambda x:x[1]) print("%s %d" % result[-1]) except Exception: break