AT_xmascon19_k.Set of Trees
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
我们将根树递归地定义如下:从一组多重根树集合中,将这些根通过一个新的顶点和边连接起来,形成一个新的根树(注意,连接的顺序不影响结果)。特别地,仅包含一个顶点的树对应于空集合。在这个问题中,我们只讨论由有限个顶点组成的根树。记由根树 T1,…,Tk 组成并连接的新根树为 {{T1,…,Tk}}。下面是一个例子的示意图:

根树的顺序递归地定义为:对于根树 T={{T1,…,Tk}} 和 T′={{T1′,…,Tl′}},设 T1≥⋯≥Tk,T1′≥⋯≥Tl′。我们以字典序比较序列 s=(T1,…,Tk) 和 s′=(T1′,…,Tl′),若 s<s′,则 T<T′;若 s=s′,则 T=T′;若 s>s′,则 T>T′。(T≥T′ 表示 T>T′ 或 T=T′)。以下是一个示意图:

黑郎和白郎进行一个游戏。初始时,盘面上有若干棵根树,其中共 N 个顶点,编号从 1 到 N。如果 Pi=0,则顶点 i 为某棵树的根;如果 Pi>0,则顶点 i 与顶点 Pi 有一条边相连。黑郎先手,二人交替执行以下操作:从盘面上选择一棵根树,并用比它严格小的另一棵根树替换之(即,选择一棵根树 T,然后选择一个 T′<T 的根树替换 T)。无法继续操作的一方输掉游戏。
他们的策略如下:
- 如果可以确保胜利,则采取可确保胜利的策略。
- 如果无法确保胜利但可以避免失败,则采取避免失败的策略。
请判断这场游戏的结果:是黑郎赢,白郎赢,还是游戏会无限进行。
输入格式
输入包括两行。第一行是一个整数 N,表示顶点数。第二行是 N 个整数 P1,P2,…,PN。
输出格式
如果黑郎赢,输出 Black;如果白郎赢,输出 White;如果游戏无限进行,输出 Infinity。
输入输出样例
输入#1
8 0 0 0 1 2 2 3 7
输出#1
Black
输入#2
14 0 1 2 2 1 5 5 0 8 8 10 10 9 9
输出#2
White
说明/提示
- 1≤N≤201912。
- 0≤Pi≤i−1(1≤i≤N)。
示例
在第一个示例中,黑郎可以通过在第一步将顶点 3 作为根的子树替换成如图所示的新根树来取得胜利。

本翻译由 AI 自动生成
输入解题思路,AI测评打分。不知道怎么写?