引子:
为什么要写这道题呢?这道题虽然简单,但是我觉得我想写屁话!,因为这道题呢,有一些细节真的是值得我们去关注的。
题目
思路:
因为是要求可以拉最大的人数,而且必须是连续且从走往右的所以,这道题的大体可以往最长上升子序列那边思路想。
所以状态转移方程应该是:
dp[i][j] = max(dp[i][j - 1],dp[i - 1][j - m] +b[j] - b[j - m]);
这个方程的意思是在第i个车头时可以拉j个车厢。
注意有一个细节!第一层循环是枚举车头的数量
for(int i=1;i<=3;i++)
第二层循环呢是枚举,在第i火车头时,拉m个车厢能拉的最多人
for(