1038. 统计同成绩学生(20)--Python

来源:互联网 发布:2k显示器有必要吗 知乎 编辑:程序博客网 时间:2024/06/06 14:02

测试点3老是提示运行超时,从网上找思路发现说是在处理大数据时,会运行超时。而且看到了某博中有使用python写的程序,非常的简洁,但是提交后也是提醒运行超时,在牛客上也运行不了,还是要再改改,未完待续。。

# 得到需要输入的成绩的个数num = input()# 得到成绩列表grades = input().split()# 得到需要统计的成绩list = input().split()num_count = list.pop(0)num_count = int(num_count)grade_dir = {} # 存放使用成绩为键值的统计个数grade_list = [] # 存放不同成绩的列表# 判断成绩列表中的各个成绩,并将相应的成绩放到字典和列表中for grade in grades:if grade not in grade_list:grade_dir[grade] = 0grade_dir[grade] += 1grade_list.append(grade)else:grade_dir[grade] += 1# 根据输入的需要统计的成绩查找其个数for grade in list:if grade == list[-1]:if grade not in grade_list:print('0')else:print(str(grade_dir[grade]))else:if grade not in grade_list:print('0' + ' ', end = '')else:print(str(grade_dir[grade]) + ' ' , end = '')