首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >2025-03-19:标记所有节点需要的时间。用go语言,给定一棵无向树,树中的节点编号从 0 到 n-1?

2025-03-19:标记所有节点需要的时间。用go语言,给定一棵无向树,树中的节点编号从 0 到 n-1?

提问于 2025-03-19 08:18:33
回答 0关注 0查看 0

2025-03-19:标记所有节点需要的时间。用go语言,给定一棵无向树,树中的节点编号从 0 到 n-1。同时给出一个长度为 n-1 的二维整数数组 edges,其中 edges[i] = [ui, vi] 表示节点 ui 和 vi 之间有一条边。

初始时,所有节点都未被标记。对于节点 i:

1.如果 i 是奇数,且在前一个时刻(x-1)至少有一个相邻节点被标记,那么节点 i 会在时刻 x 被标记。

2.如果 i 是偶数,且在前两个时刻(x-2)至少有一个相邻节点被标记,那么节点 i 会在时刻 x 被标记。

你需要返回一个数组 times,其中 times[i] 表示:如果在时刻 t=0 标记节点 i,那么时刻 times[i] 时,树中所有节点都会被标记。

注意:每个 times[i] 的计算是独立的,即在计算 times[i] 时,其他节点都未被标记。

2 <= n <= 100000。

edges.length == n - 1。

edges[i].length == 2。

0 <= edges[i][0], edges[i][1] <= n - 1。

输入保证 edges 表示一棵合法的树。

输入:edges = [[0,1],[0,2]]。

输出:[2,4,3]。

解释:

对于 i = 0 :

节点 1 在时刻 t = 1 被标记,节点 2 在时刻 t = 2 被标记。

对于 i = 1 :

节点 0 在时刻 t = 2 被标记,节点 2 在时刻 t = 4 被标记。

对于 i = 2 :

节点 0 在时刻 t = 2 被标记,节点 1 在时刻 t = 3 被标记。

回答

和开发者交流更多问题细节吧,去 写回答
相关文章

相似问题

相关问答用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档