- 変数 test は、後続のテスト ケースの数です。
- 関数 factorial は数値の階乗を返します
- 関数 summ は、1 から n nCk までの k の合計を返します
これが私のコードです:
#include<stdio.h>
float factorial(int x)
{
if(x==1)
return 1.0;
else
return (x*factorial(x-1));
}
int summ(int y)
{
int k=1;double sum=0;int r;
while(k<=y)
{
sum=sum +((factorial(y))/(factorial(y-k)*factorial(k)));
k++;
}
r=(int)sum%(int)((1000000007.00));
return r;
}
main()
{
int test;
scanf("%d",&test);int j=0;
int i=0;int arr[test];int val;int flag;
while(i<test)
{
scanf("%d",&val);
flag=summ(val);
arr[i]=flag;
i++;
}
while(j<test)
{
printf("%d\n",arr[j] );
j++;
}
return 0;
}