In the code of Tiliing Problem why the base case is 1.
i.e dp[0]=1
void solve()
{
int mod=1e9+7;
int n;
int m;
cin>>n>>m;
int dp[n+1];
dp[0]=1;
for(int i=1;i<=n;i++){
dp[i]=dp[i-1];
if(i>=m)
dp[i]=dp[i]+dp[i-m];
dp[i]=dp[i]%mod;
}
cout<<dp[n]<<'\n';
}
In this code