题号:NC210249
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
在一个凹槽中放置了

层砖块,最上面的一层有

块砖,第二层有

块,……最下面一层仅有一块砖。第

层的砖块从左至右编号为

,第i层的第j块砖有一个价值

。下面是一个有5层砖块的例子:
如果你要敲掉第

层的第

块砖的话,若

,你可以直接敲掉它,若

,则你必须先敲掉第

层的第j和第

块砖。
你的任务是从一个有

层的砖块堆中,敲掉
)
块砖,使得被敲掉的这些砖块的价值总和最大。
输入描述:
数据的第一行为两个正整数,分别表示
,接下来的第i每行有
个数据,分别表示
。
输出描述:
第1行:表示被敲掉砖块的最大值总和
备注:
对于20%的数据,满足
;
对于100%的数据,满足
;