对每个节点 u 维护两个量:
设 u 的儿子为若干 v。若 down[v] 有效,则该儿子能提供一条通往哨所的链,到 u 的距离为 down[v]+1。子树内的最大跨度来自两种情况:
一棵以节点 1 为根、共有 n 个节点的树。每个节点有标记 ci:1 表示该处设有哨所,0 表示没有哨所。
定义节点 u 的哨所跨度为:在 u 的子树中,任取两个哨所,它们之间路径所含边数的最大值。若该子树中哨所个数少于 2,则跨度为 0。
请对每个节点求出哨所跨度。
约束:节点数不超过 2×10^5,每个标记只能是 0 或 1。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册