Pagini recente » Cod sursa (job #91575) | Cod sursa (job #2566300) | Cod sursa (job #3180673) | Cod sursa (job #478188) | Cod sursa (job #2910250)
#include<fstream>
using namespace std;
ifstream cin("sandokan.in");
ofstream cout("sandokan.out");
#define mod 2000003
int prior[5005], actual[5005];
int sandokan(int n, int k) {
prior[0] = 1;
prior[1] = 1;
int aux = n, i, j;
for (i = 2; i < n; i++) {
actual[0] = 1;
for (j = 1; j <= i; j++) {
actual[j] = prior[j - 1] + prior[j];
actual[j] = actual[j] % mod;
}
actual[i] = 1;
while (j >= 0) {
prior[j] = actual[j];
j--;
}
}
while (aux >= k) {
aux = aux - k + 1;
}
return actual[aux - 1];
}
int main() {
int n, k;
cin >> n >> k;
if (k > n) {
cout << 1;
}
else {
cout << sandokan(n, k);
}
return 0;
}