Pagini recente » Cod sursa (job #2989021) | Cod sursa (job #958890) | Cod sursa (job #3138931) | Cod sursa (job #186330) | Cod sursa (job #3285325)
#include <fstream>
using namespace std;
const int MOD = 2e6 + 3;
ifstream fin("sandokan.in");
ofstream fout("sandokan.out");
int exp(int a, int b)
{
int val = 1;
while(b)
{
if(b & 1) val = (long long)val * a % MOD;
a = (long long)a * a % MOD;
b >>= 1;
}
return val;
}
int comb(int n, int k)
{
int a = 1, b = 1;
for(int i = 1; i <= k; ++i)
{
a = a * (n - i + 1) % MOD;
b = b * i % MOD;
}
return a * exp(b, MOD - 2) % MOD;
}
int n, k, sol = 1;
int main()
{
fin >> n >> k;
while(n >= k)
{
sol = (long long)sol * comb(n, k) % MOD;
n -= k - 1;
}
fout << sol;
return 0;
}