#agc016e. [agc016_e]Poor Turkeys

[agc016_e]Poor Turkeys

問題文

NN 羽の鳥がいます。 鳥には 11 から NN まで番号が振られています。

ここに MM 人の男性が一人ずつ順番に訪れます。 ii 番目に訪れる男性は次のような行動をします。

  • xix_i, yiy_i が両方とも生き残っている場合 : 鳥 xix_i, yiy_i の一方を等確率で選んで食べる。
  • xix_i, yiy_i の一方のみが生き残っている場合 : 生き残っている方の鳥を食べる。
  • xix_i, yiy_i がどちらも生き残っていない場合 : 何もしない。

次の条件を満たす (i,j)(i,\\ j) (1i<jN1 ≤ i < j ≤ N) の組の個数を求めてください。

  • すべての男性が行動を終えた後、鳥 ii, jj が両方とも生き残っている確率が 00 より大きい。

制約

  • 2N4002 ≤ N ≤ 400
  • 1M1051 ≤ M ≤ 10^5
  • 1xi<yiN1 ≤ x_i < y_i ≤ N

入力

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

NN MM x1x_1 y1y_1 x2x_2 y2y_2 :: xMx_M yMy_M

出力

条件を満たす (i,j)(i,\\ j) (1i<jN1 ≤ i < j ≤ N) の組の個数を出力せよ。


入力例 1

3 1
1 2

出力例 1

2

(i,j)=(1,3),(2,3)(i,\\ j) = (1,\\ 3), (2,\\ 3) が条件を満たします。


入力例 2

4 3
1 2
3 4
2 3

出力例 2

1

(i,j)=(1,4)(i,\\ j) = (1,\\ 4) が条件を満たします。 鳥 11, 44 が両方とも生き残るのは、次のような場合です。

  • 11 番目の男性が鳥 22 を食べる。
  • 22 番目の男性が鳥 33 を食べる。
  • 33 番目の男性が何もしない。

入力例 3

3 2
1 2
1 2

出力例 3

0

入力例 4

10 10
8 9
2 8
4 6
4 9
7 8
2 8
1 8
3 4
3 4
2 7

出力例 4

5