Pagini recente » Cod sursa (job #3262414) | Cod sursa (job #727732) | Cod sursa (job #2040830) | Cod sursa (job #698535) | Cod sursa (job #2334961)
#include <fstream>
using namespace std;
ifstream in("kperm.in");
ofstream out("kperm.out");
const int MOD=666013;
long long n,k,c,r,sol=1;//r!*(k-r)!*(((n/k+1)!)^r)*((n/k)!)^(k-r)
int main()
{
in>>n>>k;
if(k%2==0)
{
out<<0;
return 0;
}
c=n/k;
r=n%k;
for(int i=2;i<=r;i++)//r!
sol=(sol*i)%MOD;
for(int i=2;i<=k-r;i++)//(k-r)!
sol=(sol*i)%MOD;
long long cop=1;
for(int i=2;i<=c+1;i++)//(n/k+1)!
cop=(cop*i)%MOD;
for(int i=1;i<=r;i++)//^r
sol=(sol*cop)%MOD;
cop=1;
for(int i=2;i<=c;i++)//(n/k)!
cop=(cop*i)%MOD;
for(int i=1;i<=k-r;i++)//^(k-r)
sol=(sol*cop)%MOD;
out<<sol;
return 0;
}