어느 회사가 대규모 광고 캠페인을 진행하기로 했다. 그 일환으로, 경기 결과를 계산하고 표시하는 시스템을 제공하여 축구 토너먼트를 후원하려 한다. 이 시스템을 작성하라.
입력은 여러 개의 토너먼트로 이루어진다.
각 토너먼트는 참가 팀 수를 나타내는 양의 정수 $N$ 하나가 있는 줄로 시작한다 ($N \le 80$). 이어지는 $N$개의 줄에는 서로 다른 팀 이름이 한 줄에 하나씩 주어진다. 이름은 대소문자를 구분하며, 영문자, 숫자, 마침표(.), 붙임표(-)로만 이루어진다. 어떤 이름도 100자를 넘지 않는다.
팀 이름 다음 줄에는 이미 치른 경기 수를 나타내는 음이 아닌 정수 $M$이 주어진다. 이어지는 $M$개의 줄에는 각 경기가 다음 형식으로 주어진다.
홈팀 - 원정팀 r:r
즉, 홈팀 이름, 공백, 붙임표, 공백, 원정팀 이름, 공백, 그리고 결과 순이다. 결과는 한 자리 숫자(0-9), 콜론(:), 한 자리 숫자(0-9)로 이루어지며, 각각 홈팀과 원정팀이 넣은 골 수를 나타낸다.
토너먼트는 연달아 주어진다. 마지막 토너먼트 다음에는 0 하나만 있는 줄이 오며, 이 줄에 대해서는 아무것도 출력하지 않는다.
경기에 등장하는 모든 팀은 해당 토너먼트의 $N$개 팀 목록에 포함됨이 보장된다. 모든 경기의 (홈팀, 원정팀) 순서쌍은 서로 다르므로, 두 팀은 서로 최대 두 번 — 각 팀이 한 번씩 홈팀이 되어 — 경기할 수 있다.
각 토너먼트마다 다음을 순서대로 출력한다.
RESULTS: 라는 단어가 있는 줄,STANDINGS 라는 단어가 있는 줄,----------),연속한 두 토너먼트 사이에는 빈 줄을 하나 출력하되, 마지막 토너먼트 뒤에는 출력하지 않는다.
결과 표. 표는 붙임표(-), 세로줄(|), 더하기 기호(+)로 그리며 $N + 1$개의 행과 $N + 1$개의 열을 가진다. 왼쪽 위 칸은 비어 있다(공백). 첫 번째 열에는 팀의 전체 이름이 들어가고, 그 폭은 가장 긴 이름의 길이와 같다. 첫 번째 행에는 각 팀 이름의 앞 세 글자가 들어간다(이름이 세 글자보다 짧으면 오른쪽에 공백을 한두 개 채운다). 팀은 입력 목록과 같은 순서로 나열한다.
(첫 번째 행과 열을 제외한) 대각선 칸에는 가운데 정렬된 대문자 X가 들어간다(공백, X, 공백). 그 밖의 안쪽 칸은 비어 있거나(공백 세 개) 이미 치른 경기의 결과가 들어가며, 이때 홈팀은 행, 원정팀은 열에 해당한다.
순위표. 순위표는 팀마다 한 줄씩이며, 각 줄은 공백 하나로 구분된 8개의 열로 이루어진다. 두 번째 열(팀 이름)은 왼쪽 정렬이고, 나머지 열은 모두 각 열에서 가장 긴 값의 폭에 맞춰 오른쪽 정렬한다. 각 열의 내용은 다음과 같다.
.).:), 팀이 허용한 골 수.순위표는 다음 기준을 순서대로 적용하여 정렬한다.