看到n范围和给的区间看着就像区间dp 然后怎么cmp感觉都没法进行区间合并

n的300误导了下 没有注意离散化之后对时间可以dp

然而这个dp感觉不太经得起证明的样子...

dp[i][j] -> 把完全包含在[i,j]里面的区间打完的cost

那么枚举裂缝 需要加上的是 跨越裂缝的区间的cost 这个没办法做

可以知道 如果有两个完全不相交的区间 它们肯定会分在裂缝的两边 所以不用管

所以我们只需要考虑那些 完全连接在一起的区间 选择最贵的一个打掉

而裂缝肯定在最贵的[l,r]里面

* 1 区间离散化不影响做题

* 2 不一定非要泛用决战型枚举裂缝

int a[305] , b[305] , c[305] ;
int dp[605][605] ;
int main () {
int t = read() ;
while(t -- ) {
flc(dp,0) ;
int n = read() ;
vector<int> e ;
rep(i,1,n) {
a[i]=read(),b[i]=read(),c[i]=read();
e.pb(a[i]) , e.pb(b[i]) ;
}
sort(e.begin(),e.end()) ;
e.erase(unique(e.begin(),e.end()),e.end()) ;
rep(i,1,n) {
a[i] = lower_bound(e.begin(),e.end(),a[i])-e.begin()+1 ;
b[i] = lower_bound(e.begin(),e.end(),b[i])-e.begin()+1 ;
}
int m = e.size();
rep(len,2,m) {
rep(i,1,m){
int j=i+len-1;
if(j>m)break ;
int C = -1 ;
int l = -1 , r = -1 ;
rep(k,1,n) {
if(a[k] >= i && b[k] <= j) {
if(C < c[k]) {
l = a[k] , r = b[k] ; C = c[k] ;
}
}
}
if(l == -1) {
dp[i][j] = 0 ;
}
else {
dp[i][j] = 999999999 ;
rep(k,l,r) {
dp[i][j] = min(dp[i][j] , dp[i][k-1] + dp[k+1][j] + C) ;
}
}
}
}
printf("%d\n" , dp[1][m]) ;
}
}

uvalive 6938 区间dp的更多相关文章

  1. UVALive - 7061 区间DP初步

    题意:杀一只狼i会收到a[i]+b[i当前左边]+b[i当前右边]的攻击,求杀死所有狼的最小代价 #include<iostream> #include<algorithm> ...

  2. UVALive 4987---Evacuation Plan(区间DP)

    题目链接 https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_ ...

  3. 【BZOJ-4380】Myjnie 区间DP

    4380: [POI2015]Myjnie Time Limit: 40 Sec  Memory Limit: 256 MBSec  Special JudgeSubmit: 162  Solved: ...

  4. 【POJ-1390】Blocks 区间DP

    Blocks Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 5252   Accepted: 2165 Descriptio ...

  5. 区间DP LightOJ 1422 Halloween Costumes

    http://lightoj.com/volume_showproblem.php?problem=1422 做的第一道区间DP的题目,试水. 参考解题报告: http://www.cnblogs.c ...

  6. BZOJ1055: [HAOI2008]玩具取名[区间DP]

    1055: [HAOI2008]玩具取名 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1588  Solved: 925[Submit][Statu ...

  7. poj2955 Brackets (区间dp)

    题目链接:http://poj.org/problem?id=2955 题意:给定字符串 求括号匹配最多时的子串长度. 区间dp,状态转移方程: dp[i][j]=max ( dp[i][j] , 2 ...

  8. HDU5900 QSC and Master(区间DP + 最小费用最大流)

    题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=5900 Description Every school has some legends, ...

  9. BZOJ 1260&UVa 4394 区间DP

    题意: 给一段字符串成段染色,问染成目标串最少次数. SOL: 区间DP... DP[i][j]表示从i染到j最小代价 转移:dp[i][j]=min(dp[i][j],dp[i+1][k]+dp[k ...

随机推荐

  1. c++ 继承,组合

    .什么是继承 A继承B,说明A是B的一种,并且B的所有行为对A都有意义 eg:A=WOMAN B=HUMAN A=鸵鸟 B=鸟 (不行),因为鸟会飞,但是鸵鸟不会. .什么是组合 若在逻辑上A是B的“ ...

  2. Cocos2d-x Lua Node与Node层级架构

    Cocos2d-x Lua采用层级(树形)结构管理场景.层.精灵.菜单.文本.地图和粒子系统等节点(Node)对象.一个场景包含了多个层,一个层又包含多个精灵.菜单.文本.地图和粒子系统等对象.层级结 ...

  3. IDEA中的lombok插件安装以及各注解的详细介绍

    IDEA中的lombok插件安装以及各注解的详细介绍 其实对于我们来说, 写好实体类后,直接用快捷方式生成get,set方法,还有 构造方法就行了,但是对于字段比较多的, 如果修改一个属性的话,就要再 ...

  4. 巨蟒django之权限6: 权限控制表设计&&登录权限

    1.权限控制表设计 内容 . 什么是权限? . 为什么要有权限? 不同用户拥有不同的功能 . 在web开发中,什么是权限? url 代表 权限 . 开发一个权限的组件,为什么要开发组件? . 表结构的 ...

  5. CAS单点登录------未认证授权服务

    问题背景:之前我使用的127.0.0.1进行CAS 直接url 进行过滤! 后来我用nginx 进行反向代理 出现问题:  如下图 第一眼,就在内心想,草这什么鬼! 麻蛋!     ON! 调试了五分 ...

  6. PHP多线程pthreads

    Home | 简体中文 | 繁体中文 | 杂文 | Search | ITEYE 博客 | OSChina 博客 | Facebook | Linkedin | 作品与服务 | EmailPHP 高级 ...

  7. git学习------>git commit命令的默认编辑器的修改

    今天在新同事的电脑上,用git commit命令帮新同事提交代码的时候,编辑完commit的信息后,居然不记得怎么退出了.蛋疼. 后来百度了一下,原来此时是进入GUN nano编辑器.在这里可以添加你 ...

  8. 稀疏自动编码器 (Sparse Autoencoder)

    摘要: 一个新的系列,来自于斯坦福德深度学习在线课程:http://deeplearning.stanford.edu/wiki/index.php/UFLDL_Tutorial.本文梳理了该教程第一 ...

  9. python学习之路-第一天-接触python

    我的入门就决定用<简明Python教程> <简明Python教程> 1. python的优势 简单:专注于解决问题而不是关注语言本身 易学:容易上手 开源.免费 可移植性非常强 ...

  10. active scaffold

    模板文件路径:/.rvm/gems/ruby-2.2.3/gems/active_scaffold-3.5.3/app/views/active_scaffold_overrides