洛谷 P1068 [NOIP 2009 普及组] 分数线划定 python
关于lambda用于排序的用法
Python 使用 lambda 表达式进行列表排序 | 菜鸟教程
n, m = map(int,input().split())
rem = []
res = []
for i in range(n):
rem.append(list(map(int,input().split())))
#对rem进行以分数为降序,报名号为升序的排序
rem.sort(key = lambda s:(-s[1],s[0]))
m = int((m * 1.5) // 1)
#print(round(3.2)) # 输出: 3(四舍五入)
#print(math.ceil(3.2)) # 输出: 4(向上取整)
score = rem[m-1][1]#获取分数线,(易错啊!!!容易直接写成m,但是测试样例刚好能过,难以发现
#获取成绩大于分数线的学生
for i in range(n):
if rem[i][1] >= score:
res.append(rem[i])
else:
break
print(score,len(res))
for i in res:
print(" ".join(map(str,i)))