Pagini recente » Cod sursa (job #2009759) | Cod sursa (job #2149843) | Cod sursa (job #1256259) | Cod sursa (job #1738679) | Cod sursa (job #1799154)
#include <bits/stdc++.h>
using namespace std;
ifstream in("preasimplu.in");
ofstream out("preasimplu.out");
typedef long long llong;
llong T,n,k,mod,s;
llong fact(llong n){
if(n==0)return 1;
return n*fact(n-1);
}
llong C(llong n,llong k){
if(k>n) return 0;
return fact(n)/(fact(k)*fact(n-k));
}
int main()
{
in>>T;
for(;T>0;T--)
{
in>>n>>k>>mod;
s=0;
for(int i=0;i<=2*k&&i<=n;i+=2)
s=(s+C(n+1,i)%mod)%mod;
if(k==1 || n==1)s--;
out<<s<<'\n';
}
return 0;
}