E
将所有的下标作为点,建一张无向图。
当且仅当可以询问 \([l,r]\) 时,在点 \(l\) 和 \(r+1\) 之间连一条边。
可以发现能求出 \([L,R]\) 的和等价于 \(L\) 与 \(R+1\) 连通,且最少询问次数等于两点间最短路径边数。
具体实现是容易的。
F
边权很小,提示我们可以暴力枚举和替换边。
开10个并查集,\(bel_i\)表示所有边权不超过 i 的边的生成子图的连通性。初始状态显然。
询问时,从小到大枚举边权,设 \(val\) 为最小的使得 \(bel_{val}\) 中 \(u\) 和 \(v\) 连通的值。
不难发现 \(val\) 是 \(u->v\) 路径上边权最大的边。
若 \(w<val\),则用 \((u,v,w)\) 替换该边。否则不操作。
这样显然是最优的,因为肯定要替换差值最大的边。
G