题号:NC244459
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
Lv学长最近沉迷于游戏《It Takes Two》,可惜他找不到女朋友,只能左手和右手一起玩。他对此非常不满,所以也想拆散别人。这不,现在他已经走火入魔了,连看到一个图都想把它拆成两部分。
现有无向图G,有n个节点,m条边,不存在重边或自环,所有点联通。
Lv学长想将原有图G拆分为两个联通的子图G1和G2。
具体来说,删除一些边,使得图G变为两个联通的子图G1和G2,G1和G2间没有边相连。需要保证删除边的边权最大值最小,在此基础上尽可能少地删除边。
请你输出被删除的边的边权中的最大值最小是多少。
输入描述:
第一行2个正整数,n,m。
接下来m行,每行三个正整数x,y和v。表示x和y之间有一条权值为v的边相连。
输出描述:
一行一个整数,表示删除边的边权最大值最小是多少。
示例1
输入
复制
4 4
1 2 5
1 4 2
2 3 1
3 4 6
说明
需要删除1 4 2和2 3 1两条边,节点1,2为子图G1,节点3,4为子图G2,删除最大边权为2。 输入较大,建议使用较快的输入方式。
备注:
1≤n,m≤10^6
0≤边权≤10^8