Submit Ranklist
Problem : 266 - POI
Problem Statistics
Solved Member:
36 Submission:
135 User Tried:
39 Statement:
普羅夫迪夫信息學奧賽的比賽規則與眾不同。有N個參賽選手和T個題目,每個題目只有一個測試點,因此,對於每個參賽選手來說,他們的每個題目只可能有2種結果:解出或者沒有解出,沒有任何一個題目有部分得分。
每個題目的分數在比賽結束後才決定,分數等於沒有解出該題目的所有選手的人數。每個選手的得分等於他們解出的題目的分數之總和。
Philip參加了比賽,但是他被複雜的計分規則搞暈了,看著比賽結果卻無法知道自己最後的排名。
請你寫一個程序幫助Philip計算他的得分和排名。
比賽之前,分配給每個選手一個唯一的ID(從1到N)。 Philip的ID是P。比賽的最後排名按選手得分的降序排列,得分相同的情況下,解出題目多的選手排在解出題目少的選手之前,得分相同並且解出題目也相同的情況下,按照選手ID的升序排列(由小到大)。
Task:
給定每個選手的解題情況,請你寫程序計算Philip的得分以及他在最終排名中的名次。
Input:Output:
第一行包含整數N,T和P,每兩個整數之間用一個空格隔開。
接下來的N行描述了選手的解題情況,其中的第k行描述了ID為k的選手的解題情況。第k行包含T個整數,分別以空格隔開,其中第一個整數表示選手k是否解出了第一個題目,第二個整數表示選手k是否解出了第二個題目,依此類推。這T個整數均為0或者1,1表示選手k解出了相應的題目,而0表示選手k沒有解出該題目。
1 ≤ N ≤ 2000,表示參賽者人數。
1 ≤ T ≤ 2000,表示題目數。
1 ≤ P ≤ N,表示Philip的代號。
你的程式需要向標準輸出寫入一行,包含以空格隔開的2個整數。第一個整數表示Philip在POI比賽中的得分,第二個整數表示Philip在最終排名中的名次,該名次是一個1到N之間的整數,1表示排名最高(即該選手得到了最高分),N表示排名最後(即選手的得分最低)。
Sample Input:Sample Output:
5 3 2
0 0 1
1 1 0
1 0 0
1 1 0
1 1 0
3 2
HINT:
第一題1分,第二題2分,第三題4分。因此1號參賽者總分4分,2號參賽者(Philip)、4號參賽者、5號參賽者的總分都是3分,三號參賽者總分為1分。而參考第二個同分排序規則(較小代號在前)後,Philip應排在前。因此Philip的名次為第2名。
測資範圍補上 @ 2013/7/31 22:44 by hanhan0912
Source:
IOI 2009
Problem Setter
hanhan0912 Testdata:
Test | Time | Memory | Score |
---|
0 | 2000ms | 65536kb | |
1 | 2000ms | 65536kb | 5 |
2 | 2000ms | 65536kb | 5 |
3 | 2000ms | 65536kb | 5 |
4 | 2000ms | 65536kb | 5 |
5 | 2000ms | 65536kb | 5 |
6 | 2000ms | 65536kb | 5 |
7 | 2000ms | 65536kb | 5 |
8 | 2000ms | 65536kb | 5 |
9 | 2000ms | 65536kb | 5 |
10 | 2000ms | 65536kb | 5 |
11 | 2000ms | 65536kb | 5 |
12 | 2000ms | 65536kb | 5 |
13 | 2000ms | 65536kb | 5 |
14 | 2000ms | 65536kb | 5 |
15 | 2000ms | 65536kb | 5 |
16 | 2000ms | 65536kb | 5 |
17 | 2000ms | 65536kb | 5 |
18 | 2000ms | 65536kb | 5 |
19 | 2000ms | 65536kb | 5 |
20 | 2000ms | 65536kb | 5 |