Connect Graph
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

有一个  个点, 条边的无向图,现在要在这个图上按顺序添加  条无向边,每新添加一条边需要花费  天时间,问每个点最早何时与  号点联通。
注:以未加“之后的 m_2 条边”时作为第 0 天,即第 0 天时图上就有  条边,加入第一条边的时间为第一天,若加入第 i 条边之后某个点与  号点联通,且在此之前该点与 1 号点不联通,则称该点与点  联通的时间i

输入描述:

第一行一个整数 

第二行两个整数 

下面  行,一行两个整数 ,表示初始的一条边。

下面  行,一行两个整数 ,表示新添加的一条边。

输出描述:

共  行,对于第  行输出一个整数表示点  与点  联通的时间,如果永远无法与点  联通,输出 
示例1

输入

复制
5
0 7
1 2
3 4
2 5
1 5
4 3
1 4
2 4

输出

复制
0
1
6
6
3

说明

如图,其中边上的数字为加入这条边的时间。