递推

我们可以使用递推来进行求解。令 表示,让 减成 有多少种方案。那么很显然,一开始 没有变,则 。然后我们考虑转移,如果当前的 还大于 的话(也就是可以继续减), 可以减成 ,那么 都要累加上 的方案数,也就是 。最后把 都加起来就行了……吗?

我们似乎少考虑了一些。 在本题是可以合法减到 以下的,但是下标必须为非负整数,因此我们的程序在实际运算的时候需要加上一定的偏量。本题最大限制为 ,那么我们的偏量就设为这个数就行了。注意取模。