您的位置:首页 > 产品设计 > UI/UE

A1062 Talent and Virtue (25)

2015-08-07 15:55 363 查看
未完成的代码

#include<cstdio>
#include<algorithm>

using namespace std;

struct Grade{
int num,de,cai,sum,flag;
}stu[100010];
bool cmp(Grade a,Grade b){
if(a.flag!=b.flag) return a.flag < b.flag;
else if(a.sum!=b.sum) return a.sum > b.sum;
else if(a.de!=b.de) return a.de > b.de;
else return a.num < b.num;
}
int main(){
int n,l,h,m = 0;
scanf("%d %d %d",&n,&l,&h);
for(int i  =0;i < n;i++){
scanf("%d %d %d",&stu[i].num,&stu[i].de,&stu[i].cai);
stu[i].sum = stu[i].de + stu[i].cai;
if(stu[i].de>=h && stu[i].cai >= h) stu[i].flag = 1;
else if(stu[i].de >= h&&stu[i].cai >= l&&stu[i].cai<h) stu[i].flag = 2;
else if(stu[i].cai>=l&&stu[i].cai< h && stu[i].de>=stu[i].cai&&stu[i].de>=l&&stu[i].de<h) stu[i].flag = 3;
else if(stu[i].de<l || stu[i].cai < l){
stu[i].flag = 5;
}
else stu[i].flag = 4;
}
sort(stu,stu+n,cmp);
while(stu[m].flag<5 && m<=n) m++;
printf("%d\n",m);
for(int i = 0;i < m;i++)
printf("%d %d %d\n",stu[i].num,stu[i].de,stu[i].cai);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: