洛谷_P1104 生日_python写法
P1104 生日 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
知识点:
还是自定义规则的排序,然后这里还有python中如何在一行中输入多种类型的数据。
n = int(input())
data = []
num = 1
for i in range(n):
img = list(input().split())
s = img[0]
y = int(img[1])
m = int(img[2])
d = int(img[3])
data.append([s,y,m,d,num])
num += 1
import functools
def my_cmp(a,b):
if a[1]>b[1]:
return 1
elif a[1] == b[1]:
if a[2]>b[2]:
return 1
elif a[2] == b[2]:
if a[3] > b[3]:
return 1
elif a[3] == b[3]:
if a[4]<b[4]:
return 1
else:
return -1
else:
return -1
else:
return -1
else:
return -1
data.sort(key=functools.cmp_to_key(my_cmp))
for i in data:
print(i[0])