P12259 [蓝桥杯 2024 国 Java B] 最优路径

题目描述

给出一个具有 $N$ 个点、$M$ 条边的无向图(可能存在重边和自环)。其中每条边都有一个 $w$ 属性表示无向边的权重。 你可以从这个图中任意选两个不同的点 $start$、$end$,并以 $start$ 作为起点,$end$ 作为终点找出一条从 $start$ 到 $end$ 的路径(这条路径可以多次经过同一个点,也可以多次经过同一条边),将这条路径上经过的所有边的权重求一个异或和便得到了这条路径的风险值。 小蓝想要找到一条风险值最小的路径,请问最小的风险值是多少?

输入格式

第一行输入两个整数 $N$,$M$。 接下来输入 $M$ 行,每行三个整数 $u$、$v$、$w$,表示一条无向边连接 $u$、$v$ 两个点,权重为 $w$。

输出格式

输出一个整数表示最小的风险值。如果不存在任何一条满足题意的路径,输出 $-1$。

说明/提示

### 样例说明 先走第二条边,再走第四条边,风险值 $3 \oplus 1 = 2$。 ### 评测用例规模与约定 - 对于 $60\%$ 的评测用例,$1 \leq N \leq 50$,$1 \leq M \leq 10^3$。 - 对于 $100\%$ 的评测用例,$1 \leq N \leq 500$,$1 \leq M \leq 10^4$,$1 \leq u, v \leq N$,$1 \leq w \leq 10^3$。