某天,XCPC小趴菜XrkArul在水群时看到 “工口小可爱发电与cf游戏与管人交流群”中有个群友问了以下这个问题:
给定一个初始没有边的、有 n 个点的无向图
每个点都有一个非负权值wi
接着有 m 个三元数组,每个数组的格式如(ai , bi , si),其中 ai ≠ bi
依次进行如下操作:
1、对于这 m 个三元组,如果存在 i 满足条件:ai 和bi 不在同一个连通块,并且 (ai 所在连通块的点权和)+(bi 所在连通块的点权和)≥ si 。
那么输出最小的 i ,并且在 ai 和bi 间连一条无向边。
2、重复操作1直到不存在满足条件的 i
请你输出以上程序的运行结果
第一行两个整数 n,m,代表无向图中点的个数以及三元数组的个数 (1≤ n,m ≤ 2e5)
第二行包含 n 个点的权值 w1,w2 ...... wn , (0≤ wi ≤1e6)
接下来 m 行每个三个数 ai ,bi ,si , 表示m个三元组的信息(1≤ ai ,bi ≤ n,ai ≠bi,0≤ si ≤1e6)
输出题面要求即可(用空格隔开)
3 5 3 2 2 1 2 6 1 2 6 1 2 3 1 2 6 2 3 6
3 5