@yuxiangmusic

Thx a lot !!!

I'm also got quite confused about this before I tracked your answer.

- increasing i then the previous partial result
`dp[i - coin]`

is the result that has considered`coin`

already- decreasing i then the previous partial result
`dp[i - coin]`

is the result that has not considered`coin`

yet

But I still don't understand the reason why increasing i means considered `coin`

already while decreasing doesn't.

Can I simply assume that `increasing i`

means I could use element in the given array many times while `decreasing i`

means I could only use element once?

Since I'm new to dp, could you offer me an intuitive explanation?