Minus One

아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

イクタ君は、無向グラフについて異常なほどの思い入れを持っている。イクタ君は、無向グラフ GG とその 2 点 s,ts,tの組(G,s,t)(G,s,t)のうち、その「うつくしさ」が大きいものが好きである。 組(G,s,t)(G,s,t)の「うつくしさ」とは、辺 e=u,ve = \\{u, v\\} (uuvvGG の異なる 2 点) で、GGにおけるssからttへの最短路の長さが、GGeeをつけくわえた無向グラフにおけるssからttへの最短路の長さより 1 だけ大きいものの個数である。

あなたの仕事は、組(G,s,t)(G,s,t)が与えられたとき、その「うつくしさ」を求めるプログラムを書くことである。

입력

入力は以下の形式で与えられる。

NN MM ss tt

x_1x\_1 y_1y\_1

...

x_ix\_i y_iy\_i

...

x_Mx\_M y_My\_M

最初に無向グラフの頂点数、辺数、2つの頂点を表す整数N,M,s,tN,M,s,tが入力される。 2行目からM+1M+1行目までは辺によって結ばれている2つの頂点が入力される。 (ただし、GG の頂点集合を1,...,N\\{1,..., N\\}とする。)

출력

与えられたグラフをGGとしたとき、組(G,s,t)(G,s,t)の「うつくしさ」を1行で出力せよ。

제한

入力中の各変数は以下の制約を満たす。

  • 2N100,0002\leq N \leq 100,000

  • 1M300,0001\leq M \leq 300,000

  • 1s,t,x_i,y_iN1\leq s,t,x\_i,y\_i \leq N

  • sstt とは異なる

  • ss から tt に辿り着けることは保証されている