最新公告
  • 欢迎您光临信息学奥赛网,一个优质的信息学编程题库和信息学编程学习资源专业网站。欢迎加入VIP
  • Dominant Indices

    正文概述 陈老师   2026-01-20 15:15:21  

    题目描述

    给定一棵有 nn 个顶点的有根树,以顶点 11 作为根。

    我们定义顶点 xx 的深度数组为一个无限序列 [dx,0,dx,1,dx,2,][d_{x, 0}, d_{x, 1}, d_{x, 2}, \dots],其中 dx,id_{x, i} 表示满足以下两个条件的顶点 yy 的数量:

    • xxyy 的祖先;
    • xxyy 的简单路径恰好经过 ii 条边。

    顶点 xx 的深度数组的主导下标(dominant index)(简称顶点 xx 的主导下标)定义为一个下标 jj,满足:

    • 对于所有 k<jk < j,都有 dx,k<dx,jd_{x, k} < d_{x, j}
    • 对于所有 k>jk > j,都有 dx,kdx,jd_{x, k} \le d_{x, j}

    请你计算树中每个顶点的主导下标。

    输入格式

    第一行包含一个整数 nn1n1061 \le n \le 10^6),表示树的顶点数。

    接下来 n1n-1 行,每行包含两个整数 xxyy1x,yn1 \le x, y \le nxyx \ne y),表示树中的一条边。

    保证这些边构成一棵树。

    输出格式

    输出 nn 个数字,第 ii 个数字表示顶点 ii 的主导下标。

    样例

    4
    1 2
    2 3
    3 4
    
    0
    0
    0
    0
    
    4
    1 2
    1 3
    1 4
    
    1
    0
    0
    0
    
    4
    1 2
    2 3
    2 4
    
    2
    1
    0
    0
    

    数据范围

    1n1061 \le n \le 10^6

    1x,yn1 \le x, y \le nxyx \ne y

    信息学奥赛网,一个优质的信息学奥赛学习资源平台!
    信息学奥赛网 » Dominant Indices