#icpc2015summerday2j. [icpc2015summer_day2_j]連結
[icpc2015summer_day2_j]連結
题目描述
给定一个由 个顶点组成的图。每个顶点都有一个编号 。第 () 个顶点具有非负整数权重 。
初始时,图中没有边。你可以向图中添加无向边。候选边共有 条。边的编号为 。第 () 条边的端点为顶点 和 ,并且具有非负整数权重 。
你的目标是将所有顶点连接起来。为此,你可以任意次选择一条尚未添加到图中的边并将其添加到图中。但是,必须始终满足以下条件:
- 对于图中的任何连通分量,。
判断是否可以将所有顶点连接起来。如果可以,输出一种方法来添加边到图中。
约束条件
- 是整数,
- 是整数,
输入格式
输入是从标准输入读取的以下格式。
输出格式
如果无法将所有顶点连接起来,则只输出 -1
。
如果可以将所有顶点连接起来,则按照以下方式输出添加边到图中的方法。
- 第一行输出添加到图中的边的数量 ()。
- 接下来的 行中,第 行输出要添加的第 条边的编号 ()。
示例 1
4 3
50 0 0 50
1 2 0
2 3 100
3 4 0
示例 1 输出
3
1
3
2
必须最后添加第 条边。
示例 2
2 3
50 50
1 2 100
1 2 101
1 2 102
示例 2 输出
1
1
包含重复边。
示例 3
3 1
50 50 50
1 2 100
示例 3 输出
-1
无法将所有顶点连接起来。