题解 | 合并表记录
# 读取输入的记录数
n = int(input().strip())
# 初始化一个空字典来存储每个索引对应的数值总和
records = {}
# 读取接下来的n行输入
for _ in range(n):
x, y = map(int, input().strip().split())
# 如果索引x已经在字典中,将数值y加到对应的总和上
if x in records:
records[x] += y
# 如果索引x不在字典中,将x作为新键,y作为值添加到字典中
else:
records[x] = y
# 将字典中的键值对按照键(索引)的大小从小到大排序
sorted_records = sorted(records.items())
# 遍历排序后的键值对,输出每个索引和对应的数值总和
for x, y in sorted_records:
print(x, y)

查看5道真题和解析