看到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. 使用yum 出现 Loaded plugins: fastestmirror

    使用yum 安装是出现 : Loaded plugins: fastestmirror [root@localhost yum.repos.d]# yum –y install httpd  http ...

  2. Ninject学习笔记<四>

    前言 前段时间看Mvc最佳实践时,认识了一个轻量级的IOC框架:Ninject.通过google搜索发现它是一个开源项目,最新源代码地址是:http://github.com/enkari/ninje ...

  3. windows下 兼容Python2和Python3

    windows下同时安装了python2和python3时,都可以配置环境变量,如果在命令行里输入python命令,windows会去环境变量里寻找Python的安装位置,如果先找到pytoon2的, ...

  4. Spring基础知识详解

    Spring 概述 1. 什么是spring? Spring 是个java企业级应用的开源开发框架.Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用.Spring ...

  5. 【python】-- Django Form

    Django  Form Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容(自定义样式) 一.F ...

  6. Ubuntu14.04下Nginx反向代理Odoo域名

    安装nginx sudo apt-get install -y nginx 修改配置文件 vi /etc/nginx/nginx.conf #注释掉下面这行代码 #include /etc/nginx ...

  7. zabbix-2.4.8-1添加tcp状态监控

    1.安装zabbix-agentyum -y install zabbix-2.4.8-1.el6.x86_64.rpm zabbix-agent-2.4.8-1.el6.x86_64.rpm2.编辑 ...

  8. iOS Application Project与OS X Application Project对于plist使用的区别

    前几天因为在开源中国看到一个求源代码的问题: 模拟一个动物园系统MyZoo 1.动物园里面有三种动物:Panda,Elephant,Kangaroo 2.三种动物都有一定的数量(不止一只) 3.动物有 ...

  9. 06 Spring框架 依赖注入(三)多配置文件

    在Spring前几节的学习中我们都使用了一个配置文件,就像struts2中可以包含其他的配置文件,我们能不能使用多个配置文件呢(在工程比庞大,配置比较多的时候)? Spring多配置文件分为两种: 平 ...

  10. Centos7.2安装bacula及bacula-web

    serverd端安装(centos7) bacula的安装很简单,但是配置文件内容很多,配置不正确服务就启动不了,所以需要用webmin来配置. 1.安装基础软件包: 关闭SElinux(重要)set ...