华为机试HJ8合并表记录
题目:
数据表记录包含表索引index和数值value(int范围的正整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照index值升序进行输出。
想法:
遍历输入存入字典中,字典没有的键则直接存入字典,字典中存在的键则将相对应的值相加,输出结果时按照键的从小到大输出
input_number = int(input())
number_dict = {}
for i in range(input_number):
number_list = input().split(" ")
if int(number_list[0]) not in number_dict:
number_dict[int(number_list[0])] = int(number_list[1])
else:
number_dict[int(number_list[0])] += int(number_list[1])
for l in sorted(number_dict):
print(f"{l} {number_dict[l]}")