解题思路:
定义结构体--按照规定排序--过分数线人数s--输出s名
注意事项:
结构体使用sort排序需要自己编写排序规则:sort(start,end,排序方法)
参考代码:
#include<iostream>
#include<algorithm>//sort头文件
using namespace std;
//结构体
struct r{
long int id;
int score;
};
struct r x[10001];
//cmp函数 ,为sort排序定规则
bool cmp(r x,r y){
if(x.score>y.score)
return 1;
if(x.score==y.score)
if(x.id<y.id)
return 1;
return 0;
}
//主函数
int main()
{
int n,m,i;
cin>>n>>m;
for(i=0;i<n;i++){
cin>>x[i].id>>x[i].score;
}
int s=m*1.5;//过分数线 人数
sort(x,x+n,cmp); //排序,定义规则:cmp函数
//如果卡在相同分数,定位人数
for(i=0;i<s;i++){
if(x[s+1-1].score==x[s-1].score){
s++;
}
}
//输出最低分,人数
cout<<x[s-1].score<<" "<<s<<endl;
//输出录取人数
for(i=0;i<s;i++){
cout<<x[i].id<<" "<<x[i].score<<endl;
}
}
0.0分
0 人评分
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C语言代码)浏览:591 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:751 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:596 |
WU-陶陶摘苹果2 (C++代码)浏览:973 |
校门外的树 (C语言代码)浏览:700 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:614 |
C语言程序设计教程(第三版)课后习题9.10 (C语言代码)浏览:557 |
【计算直线的交点数】 (C语言代码)浏览:1450 |
简单的a+b (C语言代码)浏览:419 |
【偶数求和】 (C语言代码)浏览:431 |