#AT1935. C - Swiss-System Tournament
C - Swiss-System Tournament
C - 瑞士制锦标赛
分数: $300$ 分
问题描述
$2N$ 名选手,编号从 $1$ 到 $2N$,将参加石头剪刀布比赛。
比赛有 $M$ 轮。每轮有 $N$ 个一对一的比赛,每个选手参加其中的一场。
对于每个 $i=0, 1, \ldots, M$,选手在第 $i$ 轮结束时的排名如下确定。
- 在前 $i$ 轮中取得更多胜利的选手排名较高。
- 平局时按照编号排序,编号较小的选手排名较高。
此外,对于每个 $i=1, \ldots, M$,第 $i$ 轮的比赛安排如下。
- 对于每个 $k=1, 2, \ldots, N$,第 $i$ 轮结束时排名第 $(2k-1)$ 和 $2k$ 的选手之间进行一场比赛。
每场比赛,两名选手只出手一次,结果是一名选手的胜利,另一名选手的失败,或者平局。
能够预测未来的 Takahashi 知道选手 $i$ 在第 $j$ 轮的比赛中会出手 $A_{i, j}$,其中 $A_{i,j}$ 是 G
、C
或者 P
。
这里,G
代表石头,C
代表剪刀,P
代表布。(这些词源于日语。)
求第 $M$ 轮结束时选手的排名。
石头剪刀布规则
根据两名选手出的手判断石头剪刀布比赛的结果,规则如下:- 如果一名选手出石头(G),另一名选手出剪刀(C),石头(G)的选手获胜。
- 如果一名选手出剪刀(C),另一名选手出布(P),剪刀(C)的选手获胜。
- 如果一名选手出布(P),另一名选手出石头(G),布(P)的选手获胜。
- 如果两名选手出同样的手,比赛为平局。
约束
- $1 \leq N \leq 50$
- $1 \leq M \leq 100$
- $A_{i,j}$ 是
G
、C
或者P
。
输入
输入以以下格式从标准输入获得:
输出
输出 $2N$ 行。
第 $i$ 行应该包含第 $M$ 轮结束时排名第 $i$ 的选手的编号。
2 3
GCP
PPP
CCC
PPC
3
1
2
4
第一轮,Player $1$ 与 Player $2$ 比赛,Player $3$ 与 Player $4$ 比赛。Player $2$ 胜出,Player $3$ 胜出。
第二轮,Player $2$ 与 Player $3$ 比赛,Player $1$ 与 Player $4$ 比赛。Player $3$ 胜出,Player $1$ 胜出。
第三轮,Player $3$ 与 Player $1$ 比赛,Player $2$ 与 Player $4$ 比赛。Player $3$ 胜出,Player $4$ 胜出。
因此,最终的排名为:$3,1,2,4$,从高到低。
2 2
GC
PG
CG
PP
1
2
3
4
第一轮,Player $1$ 与 Player $2$ 比赛,Player $3$ 与 Player $4$ 比赛。Player $2$ 胜出,Player $3$ 胜出。
第二轮,Player $2$ 与 Player $3$ 比赛,Player $1$ 与 Player $4$ 比赛。平局,Player $1$ 胜出。
因此,最终的排名为:$1,2,3,4$,从高到低。