#include<stdio.h>
long long C(int a,int b)
{
long long ans=1;
for(int i=0;i<b;i++)
{
ans*=(a-i);
ans/=i+1;
}
return ans;
}
int main()
{
int t;
int n;
int i,j,k,x,m;
scanf("%d",&t);
while(t--)
{
unsigned long long sum=0;
scanf("%d%d",&x,&n);
m=n/2;
int yi=0,er=m;
while(1)
{
if(yi>er) break;
if(er%2)
{
er--;
yi+=2;
continue;
}
int oo=er/2;
int jj=yi/2;
sum+=C((oo+jj),jj)*C((oo+jj),jj);
er--;
yi+=2;
}
printf("%d %lld",x,sum);
}
return 0;
}
UVA 7360 run step(组合数学)
最新推荐文章于 2017-07-19 14:37:15 发布