AT_tupc2022_m.Fractal Tree Isomorphism
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
对于一棵有根树 S,定义 f(S) 为如下操作后的有根树:
- 用树 S 自身替换 S 的所有叶子节点。
对于有根树 S,定义一组无穷序列的树 (S1,S2,…),具体为:
- S1:=S
- Si:=f(Si−1)(i>1)
定义无穷树 S∞:=n→∞limSn,称其为由 S 导出的分形树(fractal tree)。
给定 K 棵有根树 T1,T2,…,TK。每棵树 Ti(i=1,2,…,K) 满足以下条件:
- 顶点数为 Ni≥2
- 顶点依次编号为 1,2,…,Ni
- 根为编号 1 的顶点
- 对于 j=2,3,…,Ni,顶点 j 的父节点为 pi,j
请对于每一对 (i,j)(i,j=1,2,…,K),判断由 Ti,Tj 各自导出的分形树 (Ti)∞ 和 (Tj)∞ 是否同构。
分形树的同构定义如下:
记分形树 T 的顶点集合为 V(T),边集合为 E(T)。若存在一个双射 φ:V(S)→V(T),使得以下两个条件成立,则称两棵分形树 S,T 同构:
- {u,v}∈E(S)⟺{φ(u),φ(v)}∈E(T)
- S,T 的根节点分别为 rS,rT 时,φ(rS)=rT
输入格式
输入格式如下,经标准输入给出:
K N1 p1,2 p1,3 … p1,N1 N2 p2,2 p2,3 … p2,N2 ⋮ NK pK,2 pK,3 … pK,NK
输出格式
输出 K 行。第 i 行输出长度为 K 的仅由 0 或 1 组成的字符串。
第 i 行的第 j 个字符,如果 (Ti)∞ 和 (Tj)∞ 同构则为 1,否则为 0。
输入输出样例
输入#1
4 2 1 3 1 2 3 1 1 5 1 1 2 2
输出#1
1100 1100 0011 0011
说明/提示
样例解释 1
给定的树如下所示。

对这些树进行一次操作后的结果如下所示。

数据范围
- 2≤K≤1000
- 2≤Ni≤5×104(1≤i≤K)
- i=1∑KNi≤105
- 1≤pi,j<j(1≤i≤K,2≤j≤Ni)
- 所有输入均为整数。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?