Informatica Online Judge

  핀볼 게임 [1198 / 04AE]

Time Limit(Test case) : 1000(ms)
Number of users who solved : 116   Total Tried : 665


The Champion of this Problem (C++) : ajou709 - ms / 545byte
My Best Submission (C++) : N/A

[CCC 2005]

Background

핀볼 게임은 막대기를 이용해 쇠공을 최대한 많이 쳐올려 점수를 얻는 게임이다.

게임이 종료되면 플레이어의 점수와 순위가 바로 나오는데, 점수의 범위는 0~1,000,000,000 이다. 순위는 “r of n”으로 출력되는데 n은 그 때까지 실행된 전체 게임 횟수이고, r은 플레이어의 순위를 의미한다.

r은 전체 게임 중에서 방금 끝낸 게임의 점수보다 높은 게임의 개수+1 이다.

이 핀볼 게임의 랭킹 알고리즘을 만들고 평균 랭킹을 출력해 보자.

Input

첫 줄에 전체 게임의 횟수 t(1<= t <=100000)가 입력되고, 다음 t 줄에는 실행된 순서대로 각 게임의 점수가 입력된다.

Output

평균 랭킹을 소수점 3자리에서 반올림해서 2째 자리까지 출력한다.
(단, double로 연산한다.)

IO Example

입력
5
100
200
150
170
50

출력
2.20

설명
각 게임의 랭킹은
1 of 1
1 of 2
2 of 3
2 of 4
5 of 5
따라서, 평균 랭킹은 (1+1+2+2+5)/5 = 2.20

Submit : [C/C++] | [C++11] | [Obj-C] | [Java] | [Python]
Prob Analysis : [Problem Statistics] | [Solution]