logo AlgoBeat OnlineJudge
登录 注册

#216467. [XJTUPC 2026] The Whole Rest

内存限制:512 MiB 时间限制:3000 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

这,就是我们的故事。

给定一棵包含 个顶点的树,顶点编号为 。每条边 有一个非负整数权值

定义树上的一条途径为一个顶点序列 ),满足对于任意的 ),都有一条边 。请注意,途径中的顶点可以重复,即如果存在 满足 ,仍然认为这是一条途径。

途径的边数定义为 ,即途径经过的边的数量。

途径经过的顶点集定义为 ,即途径中所有出现过的顶点(重复只计一次)。

途径的代价定义为沿途经过的边的权值的异或和:,其中 表示按位异或。特别地,当 时(即途径只包含一个顶点),途径的代价为

要求选择一条途径,满足如下条件:

  • 它经过树中所有的顶点,即途径经过的顶点集等于全部 个顶点;
  • 在所有满足条件 1 的途径中,途径的代价最小;
  • 如果有多条途径同时满足条件 1 和 2,则选择途径的边数最少的;
  • 如果有多条途径同时满足条件 1、2 和 3,则选择任意一条,都会被视为正确。

输出一条满足上述条件的途径,以顶点序列的形式给出。

输入格式

输入的第一行,包含一个整数 ),表示给定的树有 个顶点。

接下来 行,每行包含三个整数 ),表示树上存在一条边 ,边权为 。保证给出的边构成一棵树。

输出格式

输出两行。第一行包含一个整数 ),表示途径的顶点序列的长度。

第二行包含 个整数 ,用一个空格分隔,表示一条满足条件的途径,其顶点序列为

可以证明,在题目的约束下:

  • 所有顶点的编号都需要至少出现一次;
  • 对于任意一条满足题目条件 1、2 和 3 的途径,其顶点序列的长度均不超过

样例

样例输入 1

4
1 2 0
1 3 2
3 4 2

样例输出 1

4
4 3 1 2

样例输入 2

6
1 2 1
3 6 5
3 1 2
2 5 3
4 2 4

样例输出 2

8
3 6 3 1 2 4 2 5