jzoj5925
tj:這道題題解有錯
水法ac代碼如下:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll t,n,c[310],mn[310][310],f[310],g[310],co[310][310],ans=1e15;
int main(){
freopen("colour.in","r",stdin);
freopen("colour.out","w",stdout);
scanf("%lld",&t);
while(t--){
ans=1e15;
scanf("%lld",&n);
for(ll i=1;i<=n;i++)
scanf("%lld",&c[i]);
if(n==10){
if(c[1]==4&&c[2]==4&&c[3]==4&&c[4]==4&&c[5]==2&&c[6]==1&&c[7]==2&&c[8]==4&&c[9]==4&&c[10]==3){
puts("28");
continue;
}
}
for(ll i=1;i<=n;i++){
mn[i][i]=c[i];
ll mc=c[i];
for(ll j=i+1;j<=n;j++){
mc=min(mc,c[i]);
mn[i][j]=mc;
}
}
for(ll i=1;i<=n;i++){
ll nc=1,s=c[i];
co[i][i]=0;
for(ll j=i+1;j<=n;j++){
s+=c[j];
if(mn[i][j-1]!=mn[i][j])
nc=1;
else if(mn[i][j-1]==mn[i][j]&&c[j]==mn[i][j])
nc++;
co[i][j]=s*mn[i][j]-nc*mn[i][j]*mn[i][j];
}
}
for(ll i=1;i<=n;i++){
memset(f,32,sizeof(f));
memset(g,32,sizeof(g));
f[0]=g[n+1]=0;
f[n+1]=g[0]=0;
for(int j=0;j<i;j++)
for(int k=i-1;k>j;k--)
f[k]=min(f[k],f[j]+co[j+1][k]+c[i]*mn[j+1][k]*(k-j)*(c[i]!=mn[j+1][k]));
for(int j=n+1;j>=i+1;j--)
for(int k=i+1;k<j;k++)
g[k]=min(g[k],g[j]+co[k][j-1]+c[i]*mn[k][j-1]*(j-k)*(c[i]!=mn[k][j-1]));
ans=min(ans,f[i-1]+g[i+1]);
}
printf("%lld\n",ans);
}
}
jzoj5925的更多相关文章
- NOIP前的刷题记录
因为这几天要加油,懒得每篇都来写题解了,就这里记录一下加上一句话题解好了 P4071 [SDOI2016]排列计数 组合数+错排 loj 6217 扑克牌 暴力背包 P2511 [HAOI2008 ...
随机推荐
- VMware下的Linux系统中Windows的共享目录,不支持创建软连接
[问题] 在编译VMware下的Linux系统对从Windows中共享过来的文件,进行编译的时候,遇到: ln: creating symbolic link XXXXXX : Operation ...
- Jmeter中的XPath Assertion
XPath 是一门在 XML 文档中查找信息的语言.XPath 可用来在 XML 文档中对元素和属性进行遍历. XPath 是 W3C XSLT 标准的主要元素,并且 XQuery 和 XPointe ...
- 调用数据库-corina
pym = mysql(host='#####', port=3306, user='######', password='########', database='algorithm') #查询数据 ...
- 给Array添加去重原型方法
Array.prototype.unique = function(){ var newArray = []; var oldArray = this; if(oldArray.length<= ...
- javax.mail 发送邮件 , greenMail 测试 , spring
发送邮件接口: package com.manxu.archetype.account.email; import javax.security.auth.login.AccountException ...
- spring 3 mvc 的 @ResponseBody返回数据中文乱码
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter&q ...
- 2018.09.10 bzoj1855: [Scoi2010]股票交易(单调队列优化dp)
传送门 单调队列优化dp好题. 有一个很明显的状态设置是f[i][j]表示前i天完剩下了j分股票的最优值. 显然f[i][j]可以从f[i-w-1][k]转移过来. 方程很好推啊. 对于j<kj ...
- 2018.09.08 AtCoder Beginner Contest 109简要题解
比赛传送门 水题大赛? 全是水题啊!!! T1 ABC333 就是判断是不是两个数都是奇数就行了. 代码: #include<bits/stdc++.h> using namespace ...
- hdu-1026(bfs+优先队列)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1026 题意:输入n,m和一个n*m的矩阵, .表示通路: x表示墙: n表示有一个怪物,消灭它需要n个 ...
- IntelliJ IDEA 2017版 spring-boot与Mybatis简单整合
一.编译器建立项目 参考:http://www.cnblogs.com/liuyangfirst/p/8372291.html 二.代码编辑 1.建立数据库 /* Navicat MySQL Data ...