#include<iostream>
#include<cstdio>
using namespace std;

int dp[20][331][2000];

int main(){
    dp[0][0][0]=1;
    for(int i=0;i<10;i++){
        for(int j=0;j<331;j++){
            for(int k=0;k<(1<<10);k++){
                if(dp[i][j][k]==0) continue;
                for(int l=0;l<10;l++){
                    if(!((k>>l)&1) && j+l*(i+1)<=330){
                        dp[i+1][j+l*(i+1)][k|(1<<l)]+=dp[i][j][k];
                    }
                }
            }
        }
    }
    int n,s;
    while(cin>>n>>s){
        int ans=0;
        if(s>330){
            printf("0\n");
            return 0;
        }
        for(int i=0;i<(1<<10);i++){
            ans+=dp[n][s][i];
        }
        printf("%d\n",ans);
    }
    return 0;
}