先碰到Leetcode62这题,Discuss里有个大佬给了非常详细的思路解答,三段解题代码层层递进,依次从维护二维数组到维护两个一维数组再到只需要维护一个一维数组,印象深刻。
后来碰到跟 Codeforces中D. Red-Green Towers差不多的一道题,当时没思路,甚至都没想到要用动规(啊,我好菜)。后来搜了下别人列的状态转移方程,发现可以用类似的方法简化解题过程,所以列一下这两道题,方便后期学习回顾。
一、Leetcode62 Unique Paths
【原题】https://leetcode.com/problems/unique-paths/
【大佬解题思路】https://leetcode.com/problems/unique-paths/discuss/22954/C%2B%2B-DP
简单说就是给棋盘的长宽,然后输出从Start到Finish的路径数,小学奥数题。
因为小机器人只能往下走或者往右走,所以这个题的状态转移方程很好写:
dp[i][j] = dp[i-1][j] + dp[i][j-1];
<