Pagini recente » Cod sursa (job #3140633) | Cod sursa (job #3255258) | Cod sursa (job #1733331) | Cod sursa (job #2116885) | Cod sursa (job #1181575)
#include <stdio.h>
using namespace std;
unsigned long fact[40],k,n,rest[100],i,s;
FILE*f=fopen("kperm","r");
FILE*g=fopen("kperm","w");
int main()
{
{
fact[1]=1;
fact[2]=2;
fact[3]=6;
fact[4]=24;
fact[5]=120;
fact[6]=720;
fact[7]=5040;
fact[8]=40320;
fact[9]=362880;
fact[10]=298735;
fact[11]=622033;
fact[12]=138253;
fact[13]=465263;
fact[14]=519565;
fact[15]=467332;
fact[16]=151169;
fact[17]=571834;
fact[18]=302817;
fact[19]=425419;
fact[20]=516224;
fact[21]=184496;
fact[22]=82834;
fact[23]=143091;
fact[24]=652472;
fact[25]=641975;
fact[26]=447765;
fact[27]=296951;
fact[28]=258687;
fact[29]=405650;
fact[30]=181266;
}
fscanf(f,"%lu%lu",&n,&k);
for(i=1;i<=n;i++)
rest[i%k]++;
if(n%k==0) s=fact[k]%666013;
else s=2;
for(i=0;i<k;i++)
s=(s*fact[rest[i]])%666013;
fprintf(g,"%lu",s);
fclose(f);
fclose(g);
return 0;
}