What Is Your Grade? (sort)
来源:互联网 发布:windows 7 下载 iso 编辑:程序博客网 时间:2024/06/03 15:08
点击打开链接
“Point, point, life of student!”
This is a ballad(歌谣)well known in colleges, and you must care about your score in this exam too. How many points can you get? Now, I told you the rules which are used in this course.
There are 5 problems in this final exam. And I will give you 100 points if you can solve all 5 problems; of course, it is fairly difficulty for many of you. If you can solve 4 problems, you can also get a high score 95 or 90 (you can get the former(前者) only when your rank is in the first half of all students who solve 4 problems). Analogically(以此类推), you can get 85、80、75、70、65、60. But you will not pass this exam if you solve nothing problem, and I will mark your score with 50.
Note, only 1 student will get the score 95 when 3 students have solved 4 problems.
I wish you all can pass the exam!
Come on!
This is a ballad(歌谣)well known in colleges, and you must care about your score in this exam too. How many points can you get? Now, I told you the rules which are used in this course.
There are 5 problems in this final exam. And I will give you 100 points if you can solve all 5 problems; of course, it is fairly difficulty for many of you. If you can solve 4 problems, you can also get a high score 95 or 90 (you can get the former(前者) only when your rank is in the first half of all students who solve 4 problems). Analogically(以此类推), you can get 85、80、75、70、65、60. But you will not pass this exam if you solve nothing problem, and I will mark your score with 50.
Note, only 1 student will get the score 95 when 3 students have solved 4 problems.
I wish you all can pass the exam!
Come on!
A test case starting with a negative integer terminates the input and this test case should not to be processed.
45 06:30:174 07:31:274 08:12:124 05:23:1315 06:30:17-1
100909095100
题意:如果做出五道题,给100分,其余的是前n/2个人给(5+x)分数,以此类推。
题解:sort的应用,利用下标进行标记,进行选择排序即可。
代码:
#include<iostream>#include<algorithm>#include<cstdio>using namespace std;struct P{int num;int time;int id;int score;}p[110];bool cmp(P a,P b){if(a.num!=b.num)return a.num>b.num;elsereturn a.time<b.time;}bool cmp1(P a,P b){return a.id<b.id;}int main(){int n;while(cin>>n&&n>0){int flag1,flag2,flag3,flag4;flag1=flag2=flag3=flag4=0;for(int i=0;i<n;i++){int h,m,s;cin>>p[i].num; if(p[i].num==4)flag1++;if(p[i].num==3)flag2++;if(p[i].num==2)flag3++;if(p[i].num==1)flag4++;scanf("%d:%d:%d",&h,&m,&s);p[i].time = h*3600 + m*60 + s;p[i].id=i;}sort(p,p+n,cmp);flag1/=2;flag2/=2;flag3/=2;flag4/=2;for(int i=0;i<n;i++){if(p[i].num==5)p[i].score=100;else if(p[i].num==4){if(flag1){p[i].score=95;flag1--;}elsep[i].score=90;}else if(p[i].num==3){if(flag2){p[i].score=85;flag2--;} elsep[i].score=80;}else if(p[i].num==2){if(flag3){p[i].score=75;flag3--;}elsep[i].score=70;}else if(p[i].num==1){if(flag4){p[i].score=65;flag4--;}elsep[i].score=60;}elsep[i].score=50;}sort(p,p+n,cmp1);for(int i=0;i<n;i++)cout<<p[i].score<<endl;cout<<endl;}}
阅读全文
1 0
- What Is Your Grade? (sort)
- What Is Your Grade?(结构体+(sort))
- What Is Your Grade?
- What Is Your Grade?
- What Is Your Grade?
- what is your grade
- What Is Your Grade?
- What Is Your Grade?
- What Is Your Grade?(1084)
- What Is Your Grade?(结构体+(sort))hd 1084
- HDU 问题1084 What Is Your Grade?(结构体+sort)
- hdoj 1084 What Is Your Grade?(sort函数按规则排序结构体数组)
- hdu1084(What Is Your Grade?)
- HDU1084:What Is Your Grade?
- Hdu1084 What Is Your Grade?
- HDU1084--What Is Your Grade?
- HDOJ1084 What Is Your Grade?
- hdu1084:What is your grade?
- 将10进制的字符串转为16进制的byte
- HashMap源码解析——put方法
- python基础(2)
- 第八届福建省大学生程序设计竞赛-重现赛(F Problem 2277 Change)DFS序+树状数组
- java基础之String类总结
- What Is Your Grade? (sort)
- 华为机试题-合唱队
- java concurrent-Callable FutureTask
- 进制之间的转换
- 个人总结 2017.7.23
- leetcode 543. Diameter of Binary Tree
- 迷宫问题bfs
- Hibernate的配置在myeclipse中的一个坑,希望帮助同样碰到问题的人
- POJ1067(威佐夫博弈)