解题思路:
当然你也可以使用结构体或者pair。
注意事项:
唯一需要注意的就是成绩相同并不是并列名次,只是和面试成绩线相同的时候才算并列哈
参考代码:
#include <iostream> #include <algorithm> using namespace std; int n, m, t; int k[5005], s[5005], r[5005]; bool cmp(int a, int b) { if (s[a] != s[b]) return s[a] > s[b]; return k[a] < k[b]; } int main() { cin >> n >> m; for (int i = 1; i <= n; ++i) { cin >> k[i] >> s[i]; r[i] = i; } t = m = m * 1.5; sort(r + 1, r + n + 1, cmp); while (s[r[t]] >= s[r[m]]) t++; cout << s[r[m]] << " " << t - 1 << endl; for (int i = 1; i < t; ++i) cout << k[r[i]] << " " << s[r[i]] << endl; return 0; }
0.0分
36 人评分
C语言训练-计算1~N之间所有奇数之和 (C语言代码)浏览:720 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:608 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:1090 |
C语言考试练习题_保留字母 (C语言代码)浏览:700 |
C语言程序设计教程(第三版)课后习题9.2 (C语言代码)浏览:556 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:262 |
1011题解浏览:760 |
循环入门练习6 (C语言代码)浏览:953 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1478 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:984 |