Pagini recente » Cod sursa (job #297025) | Cod sursa (job #1298847) | Cod sursa (job #1785354) | Cod sursa (job #1524038) | Cod sursa (job #194036)
Cod sursa(job #194036)
#include <cstdio>
#define VMOD 2000003
int comb(int n, int k)
{
unsigned long long rasp = 1;
int q = 1, i;
if (k) rasp = n - k + 1;
for (i = n - k + 2; i <= n; ++i) {
rasp = rasp * (unsigned long long)i / (unsigned long long)(++q);
rasp %= VMOD;
}
//return rasp % VMOD;
return rasp;
}
int main()
{
int n, k, rest;
FILE *f1 ,*f2;
f1 = fopen("sandokan.in", "r");
f2 = fopen("sandokan.out", "w");
fscanf(f1, "%d%d", &n, &k);
rest = n % (k - 1);
if (!rest) rest = k - 1;
fprintf(f2, "%d\n", comb(n - 1, rest - 1));
fclose(f1);
fclose(f2);
return 0;
}