CF2065F.Skibidus and Slay

普及+/提高

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

我们定义一个长度为 kk 的序列的绝对众数为:该序列中唯一一个出现次数严格大于 ⌊k2⌋\lfloor \frac{k}{2} \rfloor 的数值。如果不存在这样的数值,则称该序列没有绝对众数。例如,序列 [1,3,2,3,3][1,3,2,3,3] 的绝对众数为 33(因为 33 出现了 33 次,3>⌊52⌋=23 > \lfloor \frac{5}{2} \rfloor = 2),而序列 [1,2,3,4,5][1,2,3,4,5] 和 [1,3,2,3,4][1,3,2,3,4] 则没有绝对众数。

Skibidus 找到了一棵有 nn 个顶点的树 $ ^{\text{∗}} $ 以及一个长度为 nn 的数组 aa。其中,顶点 ii 上写有数值 aia_i,且 aia_i 是区间 [1,n][1,n] 内的一个整数。

对于每个 ii(1≤i≤n1 \le i \le n),请判断是否存在一条非平凡的简单路径 $ ^{\text{†}} $,使得该路径上顶点构成的数值序列的绝对众数为 ii。

$ ^{\text{∗}} $ 树指的是一个无环的连通图。

$ ^{\text{†}} $ 非平凡的简单路径指的是一个顶点序列 v1,v2,…,vmv_1, v_2, \dots, v_m(其中 m≥2m \ge 2),满足对于所有 1≤i≤m−11 \le i \le m-1,顶点 viv_i 与 vi+1v_{i+1} 之间存在一条边,并且所有顶点均互不相同。注意路径至少包含 22 个顶点。

输入格式

每个测试包含多个测试用例。输入的第一行给出测试用例的数量 tt(1≤t≤1041 \le t \le 10^4)。随后是各个测试用例的描述。

每个测试用例的第一行包含一个整数 nn(2≤n≤5⋅1052 \le n \le 5 \cdot 10^5),表示顶点数。

每个测试用例的第二行包含 a1,a2,…,ana_1, a_2, \dots, a_n(1≤ai≤n1 \le a_i \le n),表示写在顶点上的整数。

接下来 n−1n-1 行,每行包含两个整数 uiu_i 和 viv_i,表示一条连接顶点 uiu_i 与 viv_i 的边(1≤ui,vi≤n1 \le u_i,v_i \le n 且 ui≠viu_i \neq v_i)。

题目保证给定的边构成一棵树,并且所有测试用例中 nn 的总和不超过 5⋅1055 \cdot 10^5。

输出格式

对于每个测试用例,输出一行一个长度为 nn 的二进制字符串 ss。其中第 ii 个字符 sis_i 定义如下:

  • 如果存在一条非平凡路径,使得该路径上顶点构成的数值序列的绝对众数为 ii,则 sis_i 为 1;
  • 否则,sis_i 为 0。

输入输出样例

  • 输入#1

    4
    3
    1 2 3
    1 3
    2 3
    4
    3 1 1 3
    1 2
    2 3
    4 2
    4
    2 4 4 2
    1 2
    2 3
    3 4
    13
    1 4 4 7 4 7 1 1 7 11 11 11 11
    1 2
    2 3
    3 4
    4 5
    4 6
    2 7
    7 8
    2 9
    6 10
    5 11
    11 12
    10 13

    输出#1

    000
    1010
    0001
    1001001000100

说明/提示

  • 在第一个测试用例中,没有任何一条非平凡路径能使得 11、22 或 33 成为绝对众数,因此输出的二进制字符串为 000。
  • 在第二个测试用例中,路径 1→2→41 \rightarrow 2 \rightarrow 4 是一条非平凡路径,在该路径上 33 为绝对众数。

输入解题思路,AI测评打分。不知道怎么写?

首页