가위바위보 토너먼트

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

문제

가위바위보는 두 명의 플레이어 A와 B가 서로 독립적으로 바위(rock), 보(paper), 가위(scissors) 중 하나를 내는 게임입니다. 바위를 이기고, 가위를 이기며, 바위가위를 이깁니다. 두 플레이어가 같은 것을 내면 승부가 나지 않습니다(무승부).

$n$명의 플레이어가 참가하는 토너먼트가 열립니다. 각 플레이어는 자신을 제외한 다른 모든 플레이어와 각각 $k$번씩 가위바위보를 하므로, 전체 경기 수는 $\dfrac{k \cdot n \cdot (n-1)}{2}$번입니다.

각 플레이어의 승률(win average)을 구하세요. 승률은 $\dfrac{w}{w+l}$로 정의하며, $w$는 그 플레이어가 이긴 경기 수, $l$은 진 경기 수입니다(무승부는 세지 않습니다).

승률은 소수점 셋째 자리까지 반올림하여 출력합니다(정확히 $x.xxx5$ 형태가 되는 경계값은 올림). $w + l = 0$이어서 승률이 정의되지 않으면 -를 출력합니다.

입력

입력은 여러 개의 테스트 케이스로 이루어집니다. 각 테스트 케이스의 첫 줄에는 두 정수 $n$과 $k$ ($1 \le n \le 100$, $1 \le k \le 100$)가 주어집니다. 이어서 각 경기마다 한 줄씩 p1 m1 p2 m2 형식으로 주어집니다. $p_1$과 $p_2$ ($1 \le p_1, p_2 \le n$, $p_1 \ne p_2$)는 두 플레이어의 번호이고, $m_1$과 $m_2$는 각 플레이어가 낸 것으로 rock, scissors, paper 중 하나입니다. 각 테스트 케이스에는 정확히 $\dfrac{k \cdot n \cdot (n-1)}{2}$개의 경기 줄이 있습니다. 마지막 테스트 케이스 다음에는 0 하나만 있는 줄이 옵니다.

출력

각 테스트 케이스마다 플레이어 1번부터 $n$번까지 순서대로 한 줄에 한 명씩 승률을 소수점 셋째 자리까지 출력합니다. 승률이 정의되지 않으면 -를 출력합니다. 서로 다른 테스트 케이스의 출력 사이에는 빈 줄 하나를 넣습니다.