Pagini recente » Cod sursa (job #2261637) | Cod sursa (job #2858106) | Cod sursa (job #1930349) | Cod sursa (job #1030151) | Cod sursa (job #1089124)
#include <fstream>
using namespace std;
ifstream fin("sandokan.in");
ofstream fout("sandokan.out");
const int mod= 2000003;
const int nmax= 5000;
int d[2][nmax+1];
int main( ) {
int n, k;
fin>>n>>k;
k= (n-1)%(k-1);
if ( n-k<k ) {
k= n-k;
}
d[1][1]= d[1][0]= d[0][0]= 1;
for ( int i= 2; i<=n; ++i ) {
int a= i%2, b= (i+1)%2;
for ( int j= 1; j<=k; ++j ) {
d[a][j]= (d[b][j-1]+d[b][j])%mod;
}
}
int sol= 1;
if ( k>0 ) {
sol= d[(n-1)%2][k];
}
fout<<sol<<"\n";
return 0;
}