Pagini recente » Cod sursa (job #2898433) | Cod sursa (job #1047379) | Cod sursa (job #2849685) | Cod sursa (job #2634455) | Cod sursa (job #25688)
Cod sursa(job #25688)
#include <stdio.h>
#define NMAX 5050
#define MOD 666013
int N, K, Ap[NMAX];
long long F[NMAX], Sol;
int main()
{
int i, t;
freopen("kperm.in", "r", stdin);
scanf("%d %d", &N, &K);
F[0] = 1;
for (i = 1; i <= N; i++) F[i] = (F[i-1]*i)%MOD;
for (i = 1; i <= K; i++) Ap[i] = N/K;
t = 0;
if (N%K>0)
for (i = 1; i <= N%K; i++) Ap[i]++, t++;
Sol = (F[t]*F[K-t])%MOD;
for (i = 1; i <= K; i++)
Sol = (Sol*F[ Ap[i] ])%MOD;
t = 0;
for (i = 1; i < K; i++) t += i;
if (t%K != 0) Sol = 0;
freopen("kperm.out", "w", stdout);
printf("%lld\n", Sol);
return 0;
}