#HK5052. 「JOISC 2025 Day3」多方通信

「JOISC 2025 Day3」多方通信

题目描述

题目译自 JOISC 2025 Day3 T3 「マルチコミュニケーション / Multi Communication

K 理事长为春季培训的参与者准备了一场游戏。春季培训有 NN 名参与者,编号从 11NN。每位参与者持有一块板子。游戏按以下步骤进行:

  1. K 理事长从 NN 名参与者中选出一人作为家长,其他参与者则为孩子。谁是家长这一信息不会告知参与者。
  2. K 理事长在家长的板子上写下字符 T,在所有孩子的板子上写下字符 F
  3. 每位参与者阅读自己板子上的字符。随后,根据事先商定的策略,参与者进行 LL 轮以下回合:
    • 每位参与者擦去自己板子上的字符,重新写下 TF,然后将板子交给 K 理事长。
    • 对于 i=1,2,,Ni=1, 2, \ldots, N,执行以下操作:
      • 参与者 ii 指定另一名参与者 pp (1pN)(1 \leq p \leq N),并将编号 pp 告知 K 理事长。K 理事长将参与者 pp 的板子展示给参与者 ii,让其阅读板子上写的字符。此时,参与者 ii 可以指定自己。
  4. 每位参与者回答谁是家长。

游戏的目标是,通过事先制定策略,无论谁被选为家长,最终所有参与者都能正确回答出家长的编号。同时,希望用尽可能少的回合数 LL 达成这一目标。

策略是指一个非负整数 LL(表示回合数)以及决定参与者行为的方法组合,具体如下:

  • 对于参与者 ii (1iN)(1 \leq i \leq N),在第 tt (1tL)(1 \leq t \leq L) 回合开始前已读取的字符依次为 a0,a1,,at1a_{0}, a_{1}, \ldots, a_{t-1} 时,仅根据这些信息 (i,t,a0,a1,,at1)(i, t, a_{0}, a_{1}, \ldots, a_{t-1}),决定参与者 ii 在第 tt 回合写入板子的字符以及指定的参与者编号。
  • 对于参与者 ii (1iN)(1 \leq i \leq N),在 LL 回合结束前已读取的字符依次为 a0,a1,,aLa_{0}, a_{1}, \ldots, a_{L} 时,仅根据这些信息 (i,L,a0,a1,,aL)(i, L, a_{0}, a_{1}, \ldots, a_{L}),决定参与者 ii 最终回答的参与者编号。

你需要制定一个能够达成目标的策略,并输出在该策略下,当家长依次为 1,2,,N1, 2, \ldots, N 时,每位参与者在每个回合中写入板子的值以及指定的参与者编号。

输入格式

第一行包含一个整数 NN,表示参与者数量。

输出格式

在标准输出中按以下格式输出:

$ \begin{aligned} &L \\ &acts_1 \\ &acts_2 \\ &\vdots \\ &acts_N \\ \end{aligned} $

其中,actssacts_{s} 表示当参与者 ss 为家长时,各参与者在各回合中的行为。actssacts_{s} 应按以下格式输出:

首先第一行输出 ss。 第 i+1i+1 行输出参与者 ii 在第 tt 回合(1tL1 \leq t \leq L)写入板子的字符 ci,tc_{i,t} 以及指定的参与者编号 pi,tp_{i,t},按回合顺序依次排列。

$ \begin{aligned} &s \\ &c_{1,1}\ p_{1,1}\ c_{1,2}\ p_{1,2}\ \cdots\ c_{1,L}\ p_{1,L} \\ &c_{2,1}\ p_{2,1}\ c_{2,2}\ p_{2,2}\ \cdots\ c_{2,L}\ p_{2,L} \\ &\vdots \\ &c_{N,1}\ p_{N,1}\ c_{N,2}\ p_{N,2}\ \cdots\ c_{N,L}\ p_{N,L} \\ \end{aligned} $

输出被判定为正确的条件是,存在一个能达成目标的策略,且输出是按照该策略得出的结果,仅在满足这一条件时输出被视为正确。

具体来说,输出被判定为正确的条件是同时满足以下两点:

  • 对于任意参与者 ii1iN1 \leq i \leq N)、回合 tt1tL1 \leq t \leq L)以及参与者 x,yx, y1x,yN,xy1 \leq x, y \leq N, x \neq y),若参与者 xx 为家长时参与者 ii 在第 tt 回合开始前读取的字符信息与参与者 yy 为家长时参与者 ii 在第 tt 回合开始前读取的字符信息相同,则参与者 ii 在第 tt 回合写入板子的字符及指定的参与者也必须相同。
  • 对于任意参与者 ii1iN1 \leq i \leq N)和参与者 x,yx, y1x,yN,xy1 \leq x, y \leq N, x \neq y),若参与者 xx 为家长时参与者 iiLL 回合结束前读取的字符信息与参与者 yy 为家长时参与者 iiLL 回合结束前读取的字符信息不同,则最终回答的参与者编号也应不同。

提交方式

你需要针对 input_01.txtinput_02.txtinput_03.txt 提交相应的输出文件:output_01.txtoutput_02.txtoutput_03.txt

3

3
1
T 1 T 2 T 3
F 1 F 2 F 3
F 1 F 2 F 3
2
F 1 F 2 F 3
T 1 T 2 T 3
F 1 F 2 F 3
3
F 1 F 2 F 3
F 1 F 2 F 3
T 1 T 2 T 3

此输出基于以下策略:

  • L=3L = 3
  • 每人第 tt(1tL)(1 \leq t \leq L) 根据初始字符写 T(家长)或 F(孩子),指定参与者 tt
  • 33 轮后,每人读过所有板,回答写 T 者的编号。

无论家长是谁,所有人都能正确回答,目标达成。但 N=3N=3 不符限制,仅作为样例。

数据范围与提示

对于所有输入数据,满足:

  • NN4,32,484, 32, 48 中的一个。

三个输入数据的得分总和即为任务总分。

对每个输入数据,得分计算如下:

若你的输出错误,即格式错误或未满足「存在一个能达成目标的策略,且输出是按照该策略得出的结果」的条件,你的得分为 00 分。

若你的输出正确,得分如下表所示。

各输入数据对应的 NN 值及评分标准如下:

子任务 输入数据 NN 得分计算方式 总分
11 input_01.txt 44 4<L4 < L00 分;2<L42 < L \leq 4167×(L2)16 - 7 \times (L-2) 分;L2L \leq 21616 1616
22 input_02.txt 3232 27<L27 < L00 分;8<L278 < L \leq 27603×(L8)60 - 3 \times (L-8) 分;L8L \leq 86060 6060
33 input_03.txt 4848 9<L9 < L00 分;L9L \leq 92424 2424

注意,若得分为 00 分,评分系统上会显示 Wrong Answer