Treats for the Cows POJ - 3186 dp 区间dp
//dp[i][j]表示第i次从左边取,第j次从右边取的价值,所以我们可以得到状态方程
//dp[i][j]=max(dp[i-1][j]+(i+j)*a[i],dp[i][j-1]+(i+j)*a[n-j+1]) (i > 0 && j > 0 )
//dp[i][0]=dp[i-1][0]+i*a[i],dp[0][i] dp[0][i-1]+i*a[n-i+1];
#include<cstdio>
#include<cmath>
#include<string>
#include<cstring>
#include<iostream>
using namespace std;
typedef long long ll;
const int inf=0x3f3f3f3f;
const int maxn=2e3+;
int a[maxn];
ll dp[maxn][maxn];
int main()
{
int n;
cin>>n;
for(int i=;i<=n;++i)
cin>>a[i];
ll ans=;
dp[][]=;
for(int i=;i<=n;++i)
{
dp[i][]=dp[i-][]+a[i]*i;
dp[][i]=dp[][i-]+a[n-i+]*i;
ans=max(ans,dp[i][]);
ans=max(ans,dp[][i]);
}
for(int i = ; i <= n; ++i)
for(int j = ; j + i <= n; ++j)
{
dp[i][j]=max(dp[i-][j]+(i+j)*a[i],dp[i][j-]+(i+j)*a[n-j+]);
ans=max(ans, dp[i][j]);
}
cout<<ans<<endl;
return ;
}
Treats for the Cows POJ - 3186 dp 区间dp的更多相关文章
- POJ 2995 Brackets 区间DP
POJ 2995 Brackets 区间DP 题意 大意:给你一个字符串,询问这个字符串满足要求的有多少,()和[]都是一个匹配.需要注意的是这里的匹配规则. 解题思路 区间DP,开始自己没想到是区间 ...
- 洛谷 1063 dp 区间dp
洛谷 1063 dp 区间dp 感觉做完这道提高组T1的题之后,受到了深深的碾压,,最近各种不在状态.. 初看这道题,不难发现它具有区间可并性,即(i, j)的最大值可以由(i, k) 与 (k+1, ...
- POJ 1179 - Polygon - [区间DP]
题目链接:http://poj.org/problem?id=1179 Time Limit: 1000MS Memory Limit: 10000K Description Polygon is a ...
- POJ 1160 经典区间dp/四边形优化
链接http://poj.org/problem?id=1160 很好的一个题,涉及到了以前老师说过的一个题目,可惜没往那上面想. 题意,给出N个城镇的地址,他们在一条直线上,现在要选择P个城镇建立邮 ...
- poj 1159 Palindrome(区间dp)
题目链接:http://poj.org/problem?id=1159 思路分析:对该问题的最优子结构与最长回文子序列相同.根据最长回文子序列的状态方程稍加改变就可以得到该问题动态方程. 假设字符串为 ...
- poj 2250 Compromise(区间dp)
题目链接:http://poj.org/problem?id=2250 思路分析:最长公共子序列问题的变形,只是把字符变成了字符串,按照最长公共子序列的思路即可以求解. 代码如下: #include ...
- POJ 1390 Blocks(区间DP)
Blocks [题目链接]Blocks [题目类型]区间DP &题意: 给定n个不同颜色的盒子,连续的相同颜色的k个盒子可以拿走,权值为k*k,求把所有盒子拿完的最大权值 &题解: 这 ...
- poj 2955"Brackets"(区间DP)
传送门 https://www.cnblogs.com/violet-acmer/p/9852294.html 题意: 给你一个只由 '(' , ')' , '[' , ']' 组成的字符串s[ ], ...
- A - Brackets POJ - 2955 (区间DP模板题)
题目链接:https://cn.vjudge.net/contest/276243#problem/A 题目大意:给你一个字符串,让你求出字符串的最长匹配子串. 具体思路:三个for循环暴力,对于一个 ...
随机推荐
- nginx+uwsgi部署Django项目到Ubuntu服务器全过程,以及那些坑!!!
前言:自己在windows上用PyCharm编写的Django项目,编写完后在windows上运行一点问题都没有,但是部署到服务器上时却Bug百出.百度,CSDN,sf,各种搜索寻求解决方案在历时3天 ...
- java的异常体系 及强制转换
一,异常 1.常见的几种异常: StackOverFlow 栈溢出错误:写递归函数的时候,没有定义递归结束的条件. ArrayIndexOutofBounds 数组越界:如新new一个数组,in ...
- C#制作Wincc组件进行配方管理
1,安装WinccV7.4并破解: 安装WinccV7.4SP1. 安装授权文件---根据提示 安装免狗驱动,根据提示 安装SImatic.net v13. 2,连接PLC, 首先在同一个局域网里面, ...
- Android 日期选择框 简洁常用
效果 核心代码 >方法 /** * @description 选择日期弹出框 * @param listener 选择日期确定后执行的接口 * @param curDate 当前显示的日期 * ...
- Centos8(Liunx) 中安装PHP7.4 的三种方法和删除它的三种方法
编译安装 Centos8下PHP源码编译和通过yum安装的区别和以后的选择 其实这两种方法各有千秋: yum安装: 从yum安装来说吧,yum相当于是自动化帮你安装,你不用管软件的依赖关系,在yum安 ...
- github无法访问的解决实践
无废话版: ----------------------------- 1.复制下面内容,添加到hosts文件里(C:\Windows\System32\drivers\etc)不能修改的话,则把文件 ...
- java.math包下计算浮点数和整数的类
(1)BigIntege:实现任意精度的整数运算.(2)BigDecimal:实现任意精度的浮点运算. 例如: 使用BigDecimal进行浮点数比较 import java.math.BigDeci ...
- MongoDB3.6版本新增特性
MongoDB3.6版新特性如下: (1)Default Bind to Localhost 从3.6版本开始,在默认情况下,MongoDB二进制文件mongod和mongos绑定到localhost ...
- es的分布式架构原理是什么?
es的分布式架构原理是什么? 1.首先说一些分片(shard)是什么? ES中所有数据均衡的存储在集群中各个节点的分片中,会影响ES的性能.安全和稳定性 每个shard都是一个最小工作单元,承载部分数 ...
- linux--工具参考篇
linux下的好用工具 工具好多!!! gdb调试利器 ldd查看程序依赖库 lsof一切皆文件 ps进程查看器 pstack 跟踪进程栈 strace 跟踪进程中的系统调用 ipcs 查询进程间通信 ...