問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!
京子ちゃんはこれから友達とかくれんぼをしようとしています。かくれんぼのフィールドは N 個の部屋でおこなわれ、部屋 S_i と部屋 T_i は扉を介してつながっています。かくれんぼの会場は非常に特殊で、どの二つの部屋 X, Y を選んでも部屋 X から部屋 Y へ行くルートはかならず 1 通りです。
かくれんぼでは最初の立ち位置が非常に重要です。そこで、京子ちゃんはかくれんぼの鬼役の友達に「最初はこの部屋で待機してほしい」と伝えることで、鬼との距離ができるだけ離れた状態でかくれんぼを始めようと考えました。京子ちゃんと鬼役の友達の初期位置をあなたが自由に決められるとき、鬼役の友達が最短経路で京子ちゃんと同じ部屋に行くために最大でいくつの扉を開ける必要がありますか?ただし、京子ちゃんは初期位置から一歩も動きません。
N M
S_1 T_1
S_2 T_2
...
S_M T_M
鬼役の友達が最短経路で京子ちゃんと同じ部屋に行くために開ける必要がある扉の数の最大値を答えてください。
また、末尾に改行を入れ、余計な文字、空行を含んではいけません。
すべてのテストケースにおいて、以下の条件をみたします。
・ 1 ≦ N, M ≦ 100,000
・ 1 ≦ S_i, T_i ≦ N
・ どの二つの部屋 X, Y を選んでも部屋 X から部屋 Y へ行くルートはかならず 1 通り
6 5
1 2
1 3
2 4
2 5
3 6
4