만드는 중입니다

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

유로코드

면접 대비

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

요약
대통령 순위와 회원 득표 수로 각 코드의 총점을 구해 내림차순으로 출력하되, 총점이 같으면 회원 득표가 많은 코드를 앞에 둡니다.
난이도

쉬움10점 중 2점

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

문제

올해 처음으로 국제 대회 Eurokod가 열린다. 아름답고 읽기 쉬운 코드를 작성하는 대회다.

참가자는 nn명이며, 1번부터 nn번까지 번호가 붙어 있다. 각 참가자는 코드를 한 개씩 작성했다.

컴퓨터 과학자 협회가 코드를 평가한다. 협회는 회장 한 명과 회원들로 구성된다. 회장과 회원은 서로 다른 방식으로 점수를 준다.

회장의 점수: 회장은 가장 아름다운 코드부터 가장 아름답지 않은 코드까지 순위를 매긴다. 1위 코드에는 nn점을 주고, 다음 순위의 코드마다 앞 순위보다 1점 적게 준다.

회원의 점수: 각 회원은 가장 아름답다고 생각하는 코드에 투표한다. 투표가 모두 끝나면 받은 표 수가 많은 순서로 코드를 정렬한다. 1위 코드에는 nn점을 주고, 다음 순위의 코드마다 앞 순위보다 1점 적게 준다.

총점: 각 코드의 총점은 회장이 준 점수와 회원이 준 점수를 더한 값이다.

총점이 높은 순서대로 코드 순위를 출력한다. 총점이 같으면 회원에게 더 많은 점수를 받은 코드가 더 높은 순위를 차지한다.

입력

첫째 줄에 참가자 수를 나타내는 정수 nn (1≤n≤501 \le n \le 50)이 주어진다.

둘째 줄에는 정수 aia_i (1≤ai≤n1 \le a_i \le n) nn개가 주어진다. ii번째 정수는 회장이 ii번째로 순위를 매긴 코드의 번호이며, 가장 아름다운 코드부터 가장 아름답지 않은 코드 순서다. 1부터 nn까지의 번호가 각각 한 번씩 나타난다.

셋째 줄에는 정수 bib_i (0≤bi≤2000 \le b_i \le 200) nn개가 주어진다. ii번째 정수는 ii번 코드가 회원에게 받은 표 수다. 같은 표 수를 받은 코드는 없다.

출력

총점의 내림차순으로 순위를 nn줄에 출력한다. 각 줄은 [rank]. Kod[label] ([number of points]) 형식이다. 번호는 두 자리로 쓰며, 필요하면 앞에 0을 붙인다. 예를 들어 3번 코드가 12점으로 1위라면 첫 줄은 1. Kod03 (12)이다.

힌트

첫 번째 예에서 Kod03과 Kod02는 모두 3점이지만, Kod03이 회원에게 표를 더 많이 받았으므로 순위가 더 높다.

두 번째 예에서 회장이 Kod05를 1위로 매겼으므로, Kod05는 n=5n = 5점을 얻는다.

예제3

  1. 예제 1

    입력
    3
    1 2 3
    50 10 20
    
    예상 출력
    1. Kod01 (6)
    2. Kod03 (3)
    3. Kod02 (3)
    
  2. 예제 2

    입력
    5
    5 2 4 1 3
    4 5 2 1 3
    
    예상 출력
    1. Kod02 (9)
    2. Kod05 (8)
    3. Kod01 (6)
    4. Kod04 (4)
    5. Kod03 (3)
    
  3. 예제 3

    입력
    7
    6 3 2 1 5 4 7
    200 56 11 0 13 105 12
    
    예상 출력
    1. Kod06 (13)
    2. Kod01 (11)
    3. Kod02 (10)
    4. Kod03 (8)
    5. Kod05 (7)
    6. Kod07 (4)
    7. Kod04 (3)