AT_abc309_d [ABC309D] Add One Edge

Description

[problemUrl]: https://atcoder.jp/contests/abc309/tasks/abc309_d $ N_1+N_2 $ 頂点 $ M $ 辺の無向グラフがあります。$ i=1,2,\ldots,M $ に対し、$ i $ 番目の辺は頂点 $ a_i $ と頂点 $ b_i $ を結びます。 また、以下を満たすことが保障されます。 - $ 1\ \leq\ u,v\ \leq\ N_1 $ を満たす整数 $ u,v $ に対し、頂点 $ u $ と頂点 $ v $ は連結 - $ N_1+1\ \leq\ u,v\ \leq\ N_1+N_2 $ を満たす整数 $ u,v $ に対し、頂点 $ u $ と頂点 $ v $ は連結 - 頂点 $ 1 $ と頂点 $ N_1+N_2 $ は非連結 次の操作をちょうど $ 1 $ 回行います。 - $ 1\ \leq\ u\ \leq\ N_1 $ を満たす整数 $ u $ と $ N_1+1\ \leq\ v\ \leq\ N_1+N_2 $ を満たす整数 $ v $ を選び、頂点 $ u $ と頂点 $ v $ を結ぶ辺を追加する 操作後のグラフにおいて、頂点 $ 1 $ と頂点 $ N_1+N_2 $ は必ず連結であることが示せます。そこで、頂点 $ 1 $ と頂点 $ N_1+N_2 $ を結ぶ経路の長さ(辺の本数)の最小値を $ d $ とします。 操作で追加する辺を適切に選んだ時にありえる $ d $ の最大値を求めてください。 連結とは? 無向グラフの頂点 $ u,v $ が連結であるとは、頂点 $ u $ と頂点 $ v $ を結ぶ経路が存在することをいいます。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N_1 $ $ N_2 $ $ M $ $ a_1 $ $ b_1 $ $ \vdots $ $ a_M $ $ b_M $

Output Format

答えを出力せよ。

Explanation/Hint

### 制約 - $ 1\ \leq\ N_1,N_2\ \leq\ 1.5\ \times\ 10^5 $ - $ 0\ \leq\ M\ \leq\ 3\ \times\ 10^5 $ - $ 1\ \leq\ a_i\ \leq\ b_i\ \leq\ N_1+N_2 $ - $ i\ \neq\ j $ ならば $ (a_i,b_i)\ \neq\ (a_j,b_j) $ - $ 1\ \leq\ u,v\ \leq\ N_1 $ を満たす整数 $ u,v $ に対し、頂点 $ u $ と頂点 $ v $ は連結 - $ N_1+1\ \leq\ u,v\ \leq\ N_1+N_2 $ を満たす整数 $ u,v $ に対し、頂点 $ u $ と頂点 $ v $ は連結 - 頂点 $ 1 $ と頂点 $ N_1+N_2 $ は非連結 - 入力はすべて整数 ### Sample Explanation 1 $ u=2,v=5 $ として操作することで $ d=5 $ と出来ます。これが最大値です。 !\[\](https://img.atcoder.jp/abc309/a64d8034b08cfa7d1f655767cc164653.png)