TouchStone
  Please Login
Login Sign Up
距离明年CSP第一轮: ??天 距离CSP第二轮: ??天 距离NOIP还有: ??天
 Homepage  Problem Set  Examinations  Submissions  Discussions  Statistics
  • Home
  • Problem Set
  • P3120
  • Problem
  • P3120[CF708C] 重新重心
    Limits : Time Limit : 10000 MS   Memory Limit : 262144 KB
    Judgment Tips : 1s,256MB
    Description

    一个 \(n\) 个节点的无根树,树上至少存在一个节点,若删掉这个点则剩下每个连通块节点数都不超过 \(n/2\) 。符合条件的节点被称为树的重心。

    nodgd认为:重心的定义破坏了公平和自由,树上每个节点都想成为重心,不能将每个节点称为重心的潜在可能扼杀在摇篮之中。

    于是nodgd决定在原树上删除一条边再添加一条边,得到一棵新的树(操作后必须是树,可以和原树相同),然后重新计算重心。nodgd想知道在这样的情况下,哪些节点可能成为新树的重心呢?

    Input Format

    第一行输入整数 \(n(2\leq n\leq 4\cdot10^5)\) ,树的节点数。

    接下来 \(n-1\) 行,每行两个整数 \(u_i,v_i(1\leq u_i,v_i\leq n)\) ,表示一条边。

    Output Format

    输出一行,包含用空格间隔的 \(n\) 个整数。如果节点 \(i\) 可能成为重心,则第 \(i\) 个整数是 $1$ ,否则第 \(i\) 个整数是 $0$ 。

    Sample Input

    样例输入1:
    3
    1 2
    2 3

    样例输入2:
    5
    1 2
    1 3
    1 4
    1 5

    Sample Output

    样例输出:
    1 1 1

    样例输出2:
    1 0 0 0 0


    Source  CF708C nodgd搬运并提供数据