Problem Description
“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!
Input
Input contains multiple test cases. Each test case contains an integer N (1<=N<=100, the number of students) in a line first, and then N lines follow. Each line contains P (0<=P<=5 number of problems that have been solved) and T(consumed time). You can assume that all data are different when 0<p.
A test case starting with a negative integer terminates the input and this test case should not to be processed.
Output
Output the scores of N students in N lines for each case, and there is a blank line after each case.
Sample Input
4
5 06:30:17
4 07:31:27
4 08:12:12
4 05:23:13
1
5 06:30:17
-1
Sample Output
100
90
90
95
100
http://blog.csdn.net/sxj731533730/article/details/71195210
It is very easy to solve this problem.
at first, you have to chose which program language to make it. C / C++ / Java / python are all able to do it. In my opinion, I propose to use Python.
As a script language, python is more and more popular in recent years. in the newest "TIOBE Index for Oct 2017", python in the forth. it's very easy to learn and use.
but anyway, I will tell you how to solve it careless about difference of each language.
at first, you have make a function to get the line from Input. you have to get the first line as the count, then the next count lines as the value. you can process this data first ingore the next data first.
things will become easy if you create a struct for each value. contains the number of solved problems. the time, and the socre we will fill at last. make a list to store them.
you have to make a very small function to compare the time who is first than others.
then let's calculate the socre for each other. you set 100 to the five-problems-solved guys and 50 to the zero-problems-sloved guys.
then sort the four-problems-sovled with time, the first half set to 95, and the rest set with 90. the same for other problems solved guys.
save the socre with the sequence of input lines.
the do the next input process. if some error or -1 received from input. print the socres to the screan.
just so easy. I told you have to solve it . but I don't want to give the answer of code.