2117: 谁考了第K名发表时间:2022-10-27 20:12 2117: 谁考了第K名时间限制: 1 Sec 内存限制: 128 MB 题目描述在一次考试中,每个学生的成绩都不相同,现知道了每个学生的学号和成绩,求考第L名学生的学号和成绩 输入第一行有两个整数,分别是学生的人数n(1≤n≤100),和求第K名学生的K(1≤k≤n)。其后有n行数据,每行包括一个学号和一个成绩,均为整数,中间用空格分隔。 输出输出第K名学生的学号和成绩,中间用空格分隔。 样例输入 Copy5 3 90788001 67 90788002 90 90788003 61 90788004 68 90788005 73 样例输出 Copy90788004 68 #include<bits/stdc++.h> using namespace std; int n,k; struct Node{ int num,score; }a[105]; bool cmp(Node x,Node y){return x.score>y.score;} int main(){ cin>>n>>k; for(int i=1;i<=n;i++) cin>>a[i].num>>a[i].score; sort(a+1,a+1+n,cmp); cout<<a[k].num<<' '<<a[k].score; return 0; } |