Pagini recente » Cod sursa (job #2761953) | Cod sursa (job #1966522) | Cod sursa (job #542185) | Cod sursa (job #3171907) | Cod sursa (job #935635)
Cod sursa(job #935635)
#include <cstdio>
#define mod 666013
int n;
long long k;
long long rez = 1;
void readdata()
{
freopen("kperm.in", "r", stdin);
freopen("kperm.out", "w", stdout);
scanf("%d %lld", &n, &k);
}
void solve()
{
long long v1, v2, val, aux;
int i;
v1 = n%k;
v2 = k - n%k;
for (i = 1; i <= v1; ++i)
rez = (rez * (long long)i) % mod;
for (i = 1; i <= v2; ++i)
rez = (rez * (long long)i) % mod;
val = 1;
for (i = 1; i <= n/k+1; ++i)
val = (val * (long long)i) % mod;
aux = 1;
for (i = 1; i <= v1; ++i)
aux = (aux * val) % mod;
rez = (rez * aux) % mod;
val = 1;
for (i = 1; i <= n/k; ++i)
val = (val * (long long)i) % mod;
aux = 1;
for (i = 1; i <= v2; ++i)
aux = (aux * val) % mod;
rez = (rez * aux) % mod;
}
void writedata()
{
if (k % 2 == 0) printf("0\n");
else printf("%lld\n", rez);
}
int main()
{
readdata();
solve();
writedata();
return 0;
}