만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

대회 순위

시간 제한1초메모리 제한256 MB

요약
팀별 제출 기록을 읽어 푼 문제의 배점을 합산하고 동점자는 공동 순위로 묶어 출력합니다.
난이도

쉬움10점 중 3점

유형
구현, 정렬
정답자
아직 제출이 없습니다

문제

대회 채점 시스템 PC^2는 한 문제를 풀 때마다 1점을 주고, 동점은 걸린 시간으로 가르는 규칙에 맞춰 만들어졌다. 문제마다 배점이 다른 대회에서 이 시스템을 쓰려면, PC^2가 남긴 기록을 읽어 다른 규칙을 적용하는 프로그램이 필요하다.

여러 대회의 기록이 주어진다. 대회마다 문제별 배점과 팀별 제출 기록이 주어진다. 각 대회의 규칙에 맞춰 팀 순위를 매겨라.

입력

입력은 여러 대회로 이루어진다. 각 대회의 첫 줄에 문제 수 PP가 주어진다 (0<P≤200 < P \le 20). PP가 0인 줄이 나오면 입력이 끝난다.

둘째 줄에 문제마다 하나씩, 양의 정수 PP개가 공백으로 구분되어 주어진다. 앞에서부터 차례로 첫 번째 문제, 두 번째 문제의 배점이다.

셋째 줄에 대회에 참가한 팀 수 TT가 주어진다 (0<T≤500 < T \le 50).

이어서 TT개의 줄에 팀 하나의 기록이 한 줄씩 주어진다. 각 줄은 팀 이름으로 시작한다. 이름에 공백은 들어갈 수 있지만 쉼표는 들어가지 않으며, 쉼표가 나오면 이름이 끝난다. 그 뒤로 문제마다 기록 하나가 쉼표로 구분되어 이어진다. 기록의 순서는 둘째 줄의 배점 순서와 같아서 첫 번째 문제가 먼저 나온다.

각 기록은 정수 하나, 슬래시 문자 /, 그리고 또 다른 정수 하나 또는 - 문자로 이루어진다. 읽는 방법은 다음과 같다.

  • 앞의 정수는 그 팀이 그 문제에 제출한 횟수이며 0 이상이다.
  • 슬래시 뒤가 -이면 그 팀은 그 문제를 풀지 못했고, 그 문제에서 점수를 얻지 못한다.
  • 슬래시 뒤가 0 이상의 정수이면 그 팀은 그 문제를 풀었다. 그 수는 대회가 시작하고 정답 제출까지 걸린 시간을 분 단위로 나타낸다.

출력

대회마다 Contest N 한 줄로 출력을 시작한다. NN은 대회 번호이며, 입력의 첫 대회가 1이고 나온 순서대로 번호를 매긴다.

이어서 대회에 참가한 팀마다 한 줄씩 순위, 팀 이름, 얻은 점수를 공백 하나로 구분해 출력한다. 순위가 1부터 오름차순이 되도록 나열한다.

점수가 높은 팀이 앞에 온다. 점수가 같은 팀은 순위도 같고, 이름을 대소문자 구분 없이 사전순으로 정렬해 출력한다. 대소문자를 무시했을 때 이름까지 같으면 원래 이름의 사전순으로 정렬한다. 공동 순위 다음 팀의 순위는 그 팀보다 앞선 팀 수만큼 건너뛴다. 예를 들어 두 팀이 공동 1위이면 그다음 팀은 3위이다.

대회 사이에 빈 줄을 넣지 않는다.

예제2

  1. 예제 1

    입력
    5
    1 1 2 3 10
    4
    Happy Fred's team,2/5,3/27,1/106,8/262,3/-
    Team 67,0/-,0/-,2/135,4/218,12/-
    Astrix,0/-,0/-,0/-,0/-,17/299
    apple pie,0/-,0/-,0/-,0/-,0/-
    0
    
    예상 출력
    Contest 1
    1 Astrix 10
    2 Happy Fred's team 7
    3 Team 67 5
    4 apple pie 0
    
  2. 예제 2

    입력
    2
    5 10
    3
    alpha,1/3,0/-
    Beta,0/-,1/4
    gamma,1/1,1/2
    1
    7
    2
    Zed,1/0
    alpha,0/-
    0
    
    예상 출력
    Contest 1
    1 gamma 15
    2 Beta 10
    3 alpha 5
    Contest 2
    1 Zed 7
    2 alpha 0