#include <iostream>

int used[10];

void solve(const int& sum,
           const int& s, int limit,
           long long int& cnt) {

    int tmp;

    for (int i = 0; i < 10; ++i) {
        if (used[i] == 0) {
            tmp = i * limit;
            if (limit > 1) {
                int est_sum = 9 * (limit - 1);

                if (limit > 2) {
                    est_sum += 9 * (limit - 2) * (limit - 2);
                }

                if (est_sum + sum + tmp >= s) {
                    used[i] = 1;
                    solve(sum + tmp,
                          s, limit - 1, cnt);
                    used[i] = 0;
                }
            }
            else {
                if (sum + tmp == s) {
                    ++cnt;
                    return;
                }
            }
        }
    }
}

int main() {
    std::ios::sync_with_stdio(false);
    std::cin.tie(0);

    int s, n;

    while (std::cin >> n >> s) {
        long long int cnt = 0;
        solve(0, s, n, cnt);
        std::cout << cnt << std::endl;
    }

    return 0;
}