Pagini recente » Cod sursa (job #1580245) | Cod sursa (job #1299774) | Cod sursa (job #1238783) | Cod sursa (job #1784290) | Cod sursa (job #1181586)
#include <stdio.h>
using namespace std;
long long fact[1000010],k,n,rest[1000000],i,s,max,fact2[1000000];
FILE*f=fopen("kperm.in","r");
FILE*g=fopen("kperm.out","w");
int main()
{
fscanf(f,"%lld%lld",&n,&k);
for(i=1;i<=n;i++)
{
rest[i%k]++;
if(rest[i%k]>max) max=rest[i%k];
}
fact[1]=1LL;
for(i=2;i<=1000001;i++)
fact[i]=(i*fact[i-1])%666013;
printf("%lld ",fact[1000000]);
// fact2[1]=
// for(i=2;i<=1000000;i++)
// fact2[i]=
if(n%k==0) s=fact[k]%666013;
else s=2;
for(i=0;i<k;i++)
s=(s*fact[rest[i]])%666013;
if(k%2)
fprintf(g,"%lld",s);
else fprintf(g,"0");
fclose(f);
fclose(g);
return 0;
}