软件实践工程OJ-1151 款带奶牛(treat) 区间dp

题目描述:

FJ有n(1≤n≤2000)个美味的食物,他想卖掉它们来赚钱给奶牛。这些食物放在一些箱子里,它们有些有趣的特性:
(1)这些食物被编 为1~n,每一天FJ可以从这排箱子的头部或者尾部取出食物去卖;
(2)这些食物放得越久,年龄越大,价值越大,食物i有一个初始的价值V(i);
(3)放了a天后,年龄为a,食物最终的价值为V(i)×a。 给定每一个食物的初始价值v(i),请求出FJ卖掉它们后可以获得的最大价值,第一天出售的食物的年龄为1,此后每增加一天食物的年龄就增加1。

输入:

第1行:一个整数n;
第i+l行:每行为食物i的初始价值V(i)。

输出:

1行:FJ最终可以获得的最大价值。

样例输入:

5
1
3
1
5
2

样例输出:

43

算法分析:

这道题用到了传说中的区间dp,我对dp不是很熟练(太水了)。废了老大劲才搞明白。

代码实现:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2016年10月8日
下一篇 2016年10月8日

相关推荐