QOJ.ac

QOJ

حد الوقت: 1.0 s حد الذاكرة: 512 MB مجموع النقاط: 100 قابلة للهجوم ✓

#9287. 双败淘汰赛

الإحصائيات

双败淘汰赛(Double Elimination)是世界上最伟大的电子竞技赛事之一,TOAD-3 邀请赛将汇集世界上最优秀的 16 支队伍。为了延长赛事的精彩程度并从广告中获得更多收益,比赛将采用双败淘汰制。

首先,所有队伍按排名排序,排序列表中的第 $i$ 支队伍与排名在 $(17 - i)$ 的队伍进行比赛。每场比赛的胜者进入胜者组,败者进入败者组。

胜者组的参赛者继续进行单败淘汰赛,但每一轮的败者会“掉入”败者组。

败者组的每一轮比赛分为两个阶段:小阶段和随后的大阶段。这两个阶段包含的比赛场数相同,且与胜者组相应轮次的比赛场数也相同。如果败者组某一轮的小阶段包含 $2^k$ 场比赛,则会产生 $2^k$ 个胜者。同时,胜者组相应轮次的 $2^k$ 场比赛会产生 $2^k$ 个败者。这 $2^k + 1$ 支队伍随后将配对进行败者组该轮次大阶段的 $2^k$ 场比赛。在该阶段,胜者组该轮次的败者只能与败者组小阶段的胜者进行比赛。

在两个组别中,每一轮比赛前都会随机选择对手进行配对。在败者组各轮次的大阶段中,形成“胜者组败者对阵败者组小阶段胜者”的配对过程也遵循同样的随机原则。

所有在同一阶段被淘汰的选手被视为在最终排名中占据相同的位置。

以下是 16 支队伍双败淘汰赛的赛制方案:

  • 进行第一轮比赛;第一轮的胜者组成胜者组,第一轮的败者组成败者组。
  • 第一轮的八个败者配对进行败者组的第一个小阶段,记为 $L_{8a}$。其中四个败者被淘汰(比赛结束,排名为 13 到 16 名),四个胜者进入该轮次的大阶段,记为 $L_{8b}$。
  • 第一轮的八个胜者配对进行胜者组的第一轮比赛,记为 $W_8$。四个胜者进入 $W_4$ 阶段,四个败者进入 $L_{8b}$ 阶段。
  • 在 $L_{8b}$ 阶段,来自 $W_8$ 的每个败者与来自 $L_{8a}$ 的胜者进行比赛,四个败者被淘汰(排名为 9 到 12 名),胜者进入 $L_{4a}$ 阶段。
  • $L_{8b}$ 的四个胜者进入 $L_{4a}$ 阶段。败者被淘汰(排名为 7 到 8 名),两个胜者进入 $L_{4b}$ 阶段。
  • $W_8$ 的四个胜者配对进行胜者组的第二轮比赛(命名为 $W_4$),两个胜者进入 $W_2$ 阶段,两个败者进入 $L_{4b}$ 阶段。
  • 在 $L_{4b}$ 阶段,来自 $W_4$ 的每个败者与 $L_{4a}$ 的胜者进行比赛,两个败者被淘汰(排名为 5 到 6 名),胜者进入 $L_{2a}$ 阶段。
  • 在 $L_{2a}$ 阶段,$L_{4b}$ 的两个胜者进行一场比赛,败者以第 4 名结束比赛,胜者进入 $L_{2b}$ 阶段(也称为败者组决赛)。
  • 在 $W_2$ 阶段进行一场比赛。胜者直接进入总决赛,败者进入 $L_{2b}$ 阶段。
  • 在 $L_{2b}$ 阶段进行一场比赛,胜者进入总决赛,败者以第 3 名结束比赛。
  • 总决赛的胜者被宣布为冠军,败者以第 2 名结束比赛。

给定每支队伍在比赛中按时间顺序进行的所有比赛结果,确定每支队伍的最终排名。

输入格式

输入包含 16 行。

每行包含两个字符串:由小写英文字母组成的队名 $t$ ($1 \le |t| \le 50$),以及该队所有比赛结果的字符串 $G$。字符串 $G$ 仅由数字 1 和 0 组成。如果字符串的第 $i$ 个字符为 1,表示该队赢得了其在锦标赛中的第 $i$ 场比赛。如果第 $i$ 个字符为 0,表示该队输掉了其在锦标赛中的第 $i$ 场比赛。

你可以假设所有队名都是唯一的,并且胜负分布对应于这些队伍进行的一场正确的双败淘汰赛。

输出格式

输出 16 行。每行应包含排名的表示方式:如果排名未并列,则为一个整数;如果排名并列,则为两个由“-”分隔的整数(表示并列排名的最高和最低名次),后跟队名。

队伍应按排名升序排列。如果多支队伍排名相同,则按队名字典序排序。详见样例输出。

样例

输入 1

escmraeett 11100
neigulsievse 010
noet 1010
nduymianegt 00
psimraiett 10111111
ustprriov 1100
yccnrieuwq 010
go 1010
agmiicnigv 10110
ctosaasetb 00
sugtacmiivnngi 11010
hpaenlte 00
lggsdp 11110
taincf 010
ainlclea 010
asmtaeert 00

输出 1

1 psimraiett
2 lggsdp
3 escmraeett
4 sugtacmiivnngi
5-6 agmiicnigv
5-6 ustprriov
7-8 go
7-8 noet
9-12 ainlclea
9-12 neigulsievse
9-12 taincf
9-12 yccnrieuwq
13-16 asmtaeert
13-16 ctosaasetb
13-16 hpaenlte
13-16 nduymianegt

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.