1028. List Sorting (25)

来源:互联网 发布:php 惠新宸 编辑:程序博客网 时间:2024/04/28 22:46

点击打开链接


#include <cstdio>#include <string.h>#include <algorithm>#include <vector>using namespace std;int n,s;struct rec{char id[10];char name[10];int mark;}stu[100010];bool cmp_1(rec a,rec b){return strcmp(a.id,b.id)<0;}bool cmp_2(rec a,rec b){if(strcmp(a.name,b.name)==0){return strcmp(a.id,b.id)<0;}else{return strcmp(a.name,b.name)<0;}}bool cmp_3(rec a,rec b){if(a.mark!=b.mark){return a.mark<b.mark;}else{return strcmp(a.id,b.id)<0;}}int main(){freopen("in.txt","r",stdin);while(scanf("%d %d",&n,&s)!=EOF){for(int i=0;i<n;i++){scanf("%s %s %d",stu[i].id,stu[i].name,&stu[i].mark);}if(s==1){sort(stu,stu+n,cmp_1);}else if(s==2){sort(stu,stu+n,cmp_2);}else{sort(stu,stu+n,cmp_3);}for(int i=0;i<n;i++){printf("%s %s %d\n",stu[i].id,stu[i].name,stu[i].mark);}}return 0;}




0 0
原创粉丝点击