将 N 表示为 1、3 之和的不同方式的计数

Nax*_*axi 2 java algorithm dynamic-programming

解决这个问题的合乎逻辑的方法是什么?我在这里找到了解决方案:代码看起来很简单的解决方案,但我在逻辑上很难理解它。

从同一个博客我无法理解这一行,

所以以1结尾的数等于DP[n-1]。

有没有更简单的方法可以解释这个解决方案?

Jan*_*aka 5

假设您要将 10 表示为 1 和 3 的和。那么您可以将 10 表示为9+17+3。那么10可以表达的不同方式的数量等于9和7可以表达的不同方式数量的总和。

IEdp[10]=dp[9]+dp[7]