九度教程--------2

来源:互联网 发布:建筑行业网站知乎 编辑:程序博客网 时间:2024/04/29 14:04

九度教程第二题

源代码

#include <stdio.h>#include <algorithm>#include <string.h> using namespace std;struct E {char name[101];int age;int score; bool operator < (const E &b) const{if(score != b.score)  return score < b.score;int tmp = strcmp(name,b.name);if(tmp != 0)  return tmp < 0;else return age < b.age; } }buf[1000];/*bool cmp(E a,E b){if(a.score != b.score)  return a.score < b.score;int tmp = strcmp(a.name,b.name);if(tmp != 0)  return tmp < 0;else return a.age < b.age; } */int main(){int n;while(~scanf("%d",&n)){for (int i = 0;i < n;i ++)scanf("%s%d%d",buf[i].name,&buf[i].age,&buf[i].score);sort(buf,buf + n); for (int i = 0;i < n;i ++)printf("%s %d %d\n",buf[i].name,buf[i].age,buf[i].score);} return 0; }
另一种解题方法(用冒泡方法和快速排序)

http://blog.csdn.net/leizh007/article/details/8510025



原创粉丝点击