这一题如果是用c来写的话,要用到结构体的多级排序,而我发现用python来写的话,如果用sorted函数,只要一句代码就搞定了,看下面这个结构体:
struct node{
string name,
int year,
int month,
int day,
};
通常我们需要自定义写我们的cmp函数,但是我发现在pyhon当中,from operator import itemgetter, attrgetter 这两个东西来做排序而很方便,如下:
res=sorted(res,key=itemgetter(1,2,3))
这样我们发现,就先按year,month,day这样的顺序做好排序了。
这一题的python代码如下: 1 import os
 2 from operator import itemgetter, attrgetter
 3 
 4 N=int(raw_input())
 5 res=[]
 6 for i in range(N):
 7     in_s=raw_input()
 8     li=in_s.split()  #default split with blank
 9     res.append(tuple(li))
10 
11 #sorted(students, key=itemgetter(1,2))
12 
13 res=sorted(res,key=itemgetter(1,2,3))
14 
15 for i in range(N):
16     print res[i][0]
17     
18