码农的生活:朴实无华,且枯燥。
我的题解:
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
const int MOD=100003;
int main()
{
int n,k;
cin>>n>>k;
int arr[100005];
memset(arr,0,sizeof(arr));
arr[1]=1;
for(int i=2;i<=k;i++)
{
for(int j=1;j<i;j++)
{
arr[i]+=arr[i-j];
if(arr[i]>MOD) arr[i]%=MOD;
}
arr[i]+=1;
if(arr[i]>MOD) arr[i]%=MOD;
}
for(int i=k+1;i<=n;i++)
{
for(int j=1;j<=k;j++)
{
arr[i]+=arr[i-j];
if(arr[i]>MOD) arr[i]%=MOD;
}
}
cout<<arr[n]<<endl;