首页 > 代码库 > BestCoder27 1001.Jump and Jump... (hdu 5162) 解题报告
BestCoder27 1001.Jump and Jump... (hdu 5162) 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5162
题目意思:有 n 个 kid,每个 kid 有三个成绩 a, b, c。选最大的一个成绩作为这个 kid 的最终成绩。然后根据每个 kid 的最终成绩,对他们进行排名。
赛中写得比较丑陋,这个还比较顺眼。。。。呵呵
1 #include <iostream> 2 #include <cstdio> 3 #include <cstdlib> 4 #include <cstring> 5 #include <algorithm> 6 using namespace std; 7 8 const int maxn = 5 + 2; 9 struct node10 {11 int id;12 int score;13 bool operator < (const node &a) const {14 return score > a.score;15 }16 }kid[maxn];17 int ans[maxn];18 19 int main()20 {21 int t, n, in;22 while (scanf("%d", &t) != EOF) {23 while (t--) {24 memset(ans, 0, sizeof(ans));25 scanf("%d", &n);26 for (int i = 0; i < n; i++) {27 int maxx = -1;28 for (int j = 0; j < 3; j++) {29 scanf("%d", &in);30 maxx = max(maxx, in);31 }32 kid[i].id = i+1;33 kid[i].score = maxx;34 }35 sort(kid, kid+n);36 for (int i = 0; i < n; i++)37 ans[kid[i].id] = i+1;38 for (int i = 1; i <= n; i++)39 printf("%d%c", ans[i], i == n ? ‘\n‘ : ‘ ‘);40 }41 }42 return 0;43 }
BestCoder27 1001.Jump and Jump... (hdu 5162) 解题报告
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。