19. 谁考了第k名
题目描述
在一次考试,每个学生的成绩均不相同,现在知道学生的学号和成绩,求考第k名学生的学号和成绩。
输入输出格式
输入格式
第一行两个整数n, k,分别表示学生人数和要求的第k名学生,1<=n<=100, 1<=k<=n。 其后有n行,每行一个字符串和一个浮点数,分别表示学号和成绩。
输出格式
第k名学生的学号和成绩
代码:
#include<cstdio>
#include<cmath>
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
struct e {
string c;
double d;
};
e a[101];
bool cmp(e a, e b) {
return a.d > b.d;
}
int main() {
int i, n, k;
cin >> n >> k;
for (i = 1; i <= n; i++) {
cin >> a[i].c >> a[i].d;
}
sort(a + 1, a + 1 + n, cmp);
cout << a[k].c << " " << a[k].d;
return 0;
}