题解 | #合并表记录#
合并表记录
https://www.nowcoder.com/practice/de044e89123f4a7482bd2b214a685201
while True:
try:
# 先输入键值对个数n
n=int(input())
# 使用字典处理接下来的键值对,索引存在即值相加,不存在直接赋值
dic={}
for j in range(0,n):
i,v=map(int,input().split())
if i in dic.keys():
dic[i]+=v
else:
dic[i]=v
# 输出合并后的键值对(索引升序)
for i in sorted(dic):
print (i,dic[i])
except:
break
中间判断索引是否已经存在的代码还可以优化 使用get,不存在时返回0加上去也不会影响结果
dic[i]=dic.get(i,0)+v
