传送门:http://new.tyvj.cn/Problem_Show.aspx?id=1505
比较强大的转化了下题目切入点好题啊
看样例
转化成直角三角形
接下来就要发生神奇的事情了
我们以红线当作DP阶段划分。
先给出状态和转移方程
f[i][j][k]表示第i阶段废掉j个砖头总过程废掉k个砖头的最大收获值
f[i][j][k]=max( f[i-1][j-1][k-j]+sum(i,j) )
其中sum[i][j]的含义是 第i 阶段 上往下j个的价值总和
可能你已经发现这个方法的巧妙之处了。
如果第i阶段第j个砖块拿掉,那一定要拿掉第i阶段j-1个方块和第i-1阶段的第j-1个方块,然后如果要拿掉第i阶段j-1个方块,又要拿掉……
依次类推 如果要拿掉第i阶段第j个砖块,那么第i阶段上面j-1个方块都要拿,而且i-1阶段的前j-1个方块也要拿。
很巧妙的避免了题设中的要求。