atcoder#ABC134F. [ABC134F] Permutation Oddness

[ABC134F] Permutation Oddness

配点 : 600600

問題文

{1, 2, ..., n1,\ 2,\ ...,\ n} の順列 pp = {p1, p2, ..., pnp_1,\ p_2,\ ...,\ p_n} の「奇妙さ」を i=1nipi\sum_{i = 1}^n |i - p_i| と定義します。

奇妙さが kk であるような {1, 2, ..., n1,\ 2,\ ...,\ n} の順列の個数を 109+710^9+7 で割った余りを求めてください。

制約

  • 入力は全て整数である。
  • 1n501 \leq n \leq 50
  • 0kn20 \leq k \leq n^2

入力

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

nn kk

出力

奇妙さが kk であるような {1, 2, ..., n1,\ 2,\ ...,\ n} の順列の個数を 109+710^9+7 で 割った余りを出力せよ。

3 2
2

{1, 2, 31,\ 2,\ 3} の順列は 66 個存在します。その中で奇妙さが 22 であるのは {2, 1, 32,\ 1,\ 3} と {1, 3, 21,\ 3,\ 2} の 22 つです。

39 14
74764168