30113 - Mos-bridges

San Bytecisco 是一个风景优美的沿海小镇。

它由一些小而人口稠密的岛屿组成,编号从 1n

某些岛屿之间通过桥梁连接,用于双向的道路交通。

每对岛屿之间最多可以有一座桥。

这些岛屿的连接方式使得每个岛屿都可以通过桥梁到达其他岛屿。

Byteasar 和 Bytie 正计划在 San Bytecisco 骑自行车旅行。

他们将从 1 号岛出发。

他们打算访问每个岛屿,同时每座桥只经过一次,并在旅行结束时回到出发地,即 1 号岛。

作为经验丰富的骑手,他们预计会遇到一些严重的麻烦……风!

毕竟,沿海地区风很大,尤其是在岛屿之间的桥上。显然,根据风速和方向,风会在不同程度上使得跨越桥梁变得困难。

为了简单起见,我们假设每座桥和每个跨越方向的逆风速度是恒定的。

帮助 Byteasar 和 Bytie 找到他们想要的路线,并且这条路的疲劳程度最小。Byteasar 和 Bytie 同意将最大逆风速度作为路线疲劳程度的衡量标准。

输入

标准输入的第一行有两个用空格分隔的整数:nm2 \le n \le 10001 \le m \le 2000),分别表示 San Bytecisco 的岛屿数量和桥梁数量。岛屿编号从 1n,桥梁编号从 1m。接下来的行指定了桥梁。第 i 行包含四个用空格分隔的整数 a_i, b_i, l_i, p_i1 \le l_i, p_i \le 1000),表示第 i 号桥连接了第 a_i 号和第 b_i 号岛屿。当从 a_ib_i 移动时的逆风速度为 l_i,而从 b_ia_i 移动时的逆风速度为 p_i

输出

如果没有满足这两位勇敢骑手要求的路线,标准输出的第一行应为单词 NIE(波兰语中的“不”)。

否则,输出应有两行,指定 San Bytecisco 上最不疲劳的路线。

第一行应包含该路线的最大逆风速度,即我们希望最小化的数字。

第二行应包含 m 个整数,用空格分隔,给出在最不疲劳的路线中依次经过的桥梁编号。

如果有多条最不疲劳的路线,程序可以任意选择一条。

样例

输入

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

输出

4
4 3 2 1

提示

2 \le n \le 10001 \le m \le 20001 \le a_i, b_i \le na_i \neq b_i1 \le l_i, p_i \le 1000

时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题