Programming Olympiad

input file : olympics.in        output file : olympics.out

 

The judges at the programming contest have been watching the Olympics, and are considering using style judging at next year’s contest.  Particularly, they like the model used in the diving competition where each problem is given a degree of difficulty and then six judges will give it a score on a scale from 0.0 to 10.0.  The high and low score will be discarded, the other four scores added up, and then the sum is multiplied by the degree of difficulty.  The team with the highest total score for all their problems is declared the winner.

 

Your job for this problem is to write a program that will read in the number of teams and problems, each problem’s degree of difficulty, and the problems that are submitted by each team at an actual competition along with each of the six judges’ scores for those problems.  The program will then print a summary showing each team’s score on each of the problems along with the winning team number and their score.  A team is allowed to submit a problem more than once without penalty, but the judges’ scores for the most recent submission are the ones that are used.  In case more than one team has an overall score within three hundredths of a point of the high score, your program should indicate there is a tie and list the teams with multiple high scores.

 

Input

 

The input file will consist of data sets for one or more contests.  Each data set will begin with a single integer 0 £ n £ 9, representing the total number of teams competing in the contest.  This will be followed by a line that begins with an integer 0 < p £ 9 indicating the number of  problems at the competition, and then p numbers representing the judges’ difficulty ratings for each of the  problems.  Each of the difficulty ratings is a non-negative fixed point value with exactly one digit after the decimal point. All judges’ scores are fixed point numbers in the range from 0.0 to 10.0 with one digit after the decimal point.  The next lines contain a team’s submission and the six judges’ scores for that submission in the following format :

 

Team-Number Problem-Number Score1 Score2 Score3 Score4 Score5 Score6

 

The end of input for a given contest is indicated by the string "TIME'S UP" starting in column 1.  A line of "END" starting in column 1 indicates end of input and should not be processed.

Output

 

The first line of output for each contest should be the number of the contest, where contest numbering starts with 1.  The program should then print a summary showing the problem numbers, followed by a blank line, and then the team number of each team starting with the first team along with their total scores for each of the respective problems in a tabular format as shown below.  All team and problem numbers are numbered with positive integers starting at 1 and continuing with each consecutive integer thereafter.  The score for each team should be rounded to one digit to the right of the decimal point.  This should be followed by a blank line, the team number(s) with the most points, and the overall winning point total.

 

           Prob1  Prob2  Prob3       Probj

 

Team1      Score1 Score2 Score3     Scorej

Team2      Score1 Score2 Score3     Scorej

Team3      Score1 Score2 Score3     Scorej

Text Box: … Text Box: …
 

 


Teami      Score1 Score2 Score3     Scorej

 

Team x wins with xxx.x points

 

In case of a tie between two teams, the final line should be written in the following format :

 

Tie for first with xxx.x points among these teams : x x

 

If  the tie is between more than two teams, simply continue listing your team numbers with a single space between each.

 

Have two blank lines after each contest.

 

Sample Input

4

3 2.1 1.9 1.8

2 2 6.0 2.1 6.5 7.0 8.0 7.5

1 2 1.9 5.0 6.5 7.0 7.0 5.5

3 3 1.8 5.5 8.5 7.0 6.0 6.0

4 3 2.3 7.0 7.0 7.0 7.0 7.0

2 3 2.3 7.0 7.0 7.0 7.0 7.0

2 1 1.9 5.0 6.5 7.0 7.0 5.5

1 1 1.9 5.0 6.5 7.0 7.0 5.5

3 1 1.9 5.0 6.5 7.0 7.0 5.5

2 3 8.0 7.5 7.5 8.0 7.5 7.0

1 3 6.9 5.5 6.5 7.5 7.0 8.5

4 2 5.5 7.5 7.0 7.0 8.0 7.5

TIME'S UP

END

 

Sample Output (corresponding to sample input)

Contest 1:

           1       2       3

 

1       50.4    45.6    50.2

2       50.4    51.3    54.9

3       50.4     0.0    44.1

4        0.0    55.1    50.4

 

Team 2 wins with 156.6 points