#include <stdio.h>
#define max 1000000000
long n,s,i,j,k,l;
long long a[51][501][8]={0},x[8],y[16]={0},z;
void add()
{
for (l=1; l<=6; l++)
a[i][j][l]+=a[i-1][j-k][l];
for (l=1; l<=6; l++)
{a[i][j][l+1]+=a[i][j][l]/max; a[i][j][l]%=max;}
}
int main()
{
scanf("%ld %ld",&n,&s);
if (s%2) {printf("0\n"); return 0;}
s/=2;
a[0][0][1]=1;
for (i=1; i<=n; i++)
{
a[i][0][1]=1;
for (j=1; j<=s; j++)
for (k=0; k<=9; k++)
if (j>=k) add();
}
for (l=1; l<=6; l++)
x[l]=a[n][s][l]-a[n-1][s][l];
for (l=1; l<=6; l++)
if (x[l]<0) {x[l]+=max; x[l+1]--;}
for (i=1; i<=6; i++)
for (j=1; j<=6; j++)
y[i+j-1]+=a[n][s][i]*x[j];
for (l=1; l<=14; l++)
{y[l+1]+=y[l]/max; y[l]%=max;}
for(l=15; y[l]==0; l--);
printf("%lld",y[l--]);
for (;l>0; l--)
{ for (z=max/10; z>y[l]&&z>0; z/=10)
printf("0");
printf("%lld",y[l]);
}
return 0;
}
Бидний гаргасан амжилтууд (Team SMCS1)
12 лет назад
Комментариев нет:
Отправить комментарий