Problem:
Combination of Number Sequences

0 から 9 までの整数を使った n 個の数の並び k1, k2, ..., kn を考えます。正の整数 n と s を読み込んで、

k1 + 2 × k2 + 3 × k3 + ... + n × kn = s

となっているような n 個の数の並びが何通りあるかを出力するプログラムを作成してください。ただし、1 つの「n 個の数の並び」には同じ数が 2 回以上現われないものとします。

Input

入力は複数のデータセットからなります。各データセットとして、n (1 ≤ n ≤ 10) と s (0 ≤ s ≤ 10,000)が空白区切りで１行に与えられます。

データセットの数は 100 を超えません。

Output

データセットごとに、n 個の整数の和が s になる組み合わせの個数を１行に出力します。

Sample Input

3 10
3 1

Output for the Sample Input

8
0

Solution in Ruby (judge verdict: Time Limit Exceeded)

Used = Array.new(10).fill(false)

def solve (numRemained, s)

  #sがマイナスのとき
  return 0 if s < 0

  #n個すべての数を使用した時
  if numRemained < 1
    return 1 if s == 0
    return 0
  end

  c = 0
  (0...9).each do |i|
    next if Used[i]
    Used[i] = true
    c += solve(numRemained - 1, s - numRemained * i)
    Used[i] = false
  end
  return c
end

while (input = $stdin.gets) do
  n, s = input.chomp.split(" ").map(&:to_i)
  p solve(n, s)
end