Pagini recente » Cod sursa (job #2360927) | Cod sursa (job #2843980) | Cod sursa (job #3278346) | Cod sursa (job #1284556) | Cod sursa (job #1258429)
#include<fstream>
using namespace std;
#define MOD 666013
ifstream fin("kperm.in");
ofstream fout("kperm.out");
long long n,k,p,r,F[5005];
long long pow(long long N, long long K)
{
long long sol=1;
while (K)
{
if (K&1) sol*=N, sol%=MOD;
N*=N, N%=MOD;
K>>=1;
}
return sol;
}
int main()
{
long long i;
fin>>n>>k;
if (!(k&1))
{
fout<<"0\n";
return 0;
}
p=n/k, r=n%k;
for (i=1,F[0]=1;i<=n;++i)
F[i]=F[i-1]*i%MOD;
fout<<F[r]*F[k-r]%MOD*pow(F[p+1],r)%MOD*pow(F[p],k-r)%MOD<<"\n";
return 0;
}