POJ3616 Milking Time 简单DP
注意0,1,.....,N是时间点,i~i+1是时间段
然后就是思路:dp[i]代表到时间点 i 获得的最大价值,
1:dp[i]=max(dp[i],dp[s-r]+e),表示有以s为开头,i为结尾的工作时间,效率是e(保证前面有工作)
2:dp[i]=max(dp[i],e),表示前面没有工作
3:dp[i]=max(dp[i],dp[i-1]),保存到时间点i的最大价值
代码如下
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<string>
#include<iostream>
#include<cstdlib>
#include<queue>
#include<map>
#include<set>
using namespace std;
typedef long long LL;
struct asd
{
int s,e;
};
vector<asd>a[];
int dp[];
int main()
{
int n,m,r;
scanf("%d%d%d",&n,&m,&r);
for(int i=; i<m; ++i)
{
int x,y,z;
scanf("%d%d%d",&x,&y,&z);
a[y].push_back((asd)
{
x,z
});
}
for(int i=; i<=n; ++i)
{
for(int j=; j<a[i].size(); ++j)
{
int e=a[i][j].e;
int s=a[i][j].s;
dp[i]=max(dp[i],e);
dp[i]=max(dp[i],dp[s-r]+e);
}
dp[i]=max(dp[i],dp[i-]);
}
printf("%d\n",dp[n]);
return ;
}
POJ3616 Milking Time 简单DP的更多相关文章
- POJ3616 Milking Time【dp】
		
Description Bessie is such a hard-working cow. In fact, she is so focused on maximizing her producti ...
 - poj-3616 Milking Time (区间dp)
		
http://poj.org/problem?id=3616 bessie是一头工作很努力的奶牛,她很关心自己的产奶量,所以在她安排接下来的n个小时以尽可能提高自己的产奶量. 现在有m个产奶时间,每个 ...
 - POJ 3616 Milking Time 简单DP
		
题意:奶牛Bessie在0~N时间段产奶.农夫约翰有M个时间段可以挤奶,时间段f,t内Bessie能挤到的牛奶量e.奶牛产奶后需要休息R小时才能继续下一次产奶,求Bessie最大的挤奶量. 详见代码 ...
 - Milking Time---poj3616(简单dp)
		
题目链接:http://poj.org/problem?id=3616 题意:人从奶牛身上挤奶有m个时间段(1----n),每个时间段包含 s e f 表示从 s 到 e 的这段时间可以获得 f 单位 ...
 - poj3616 Milking Time(状态转移方程,类似LIS)
		
https://vjudge.net/problem/POJ-3616 猛刷简单dp的第一天第二题. 这道题乍一看跟背包很像,不同的在于它是一个区间,背包是定点,试了很久想往背包上套,都没成功. 这题 ...
 - HDU 1087  简单dp,求递增子序列使和最大
		
Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 ...
 - Codeforces Round #260 (Div. 1) A. Boredom (简单dp)
		
题目链接:http://codeforces.com/problemset/problem/455/A 给你n个数,要是其中取一个大小为x的数,那x+1和x-1都不能取了,问你最后取完最大的和是多少. ...
 - codeforces Gym 100500H A. Potion of Immortality 简单DP
		
Problem H. ICPC QuestTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100500/a ...
 - 简单dp --- HDU1248寒冰王座
		
题目链接 这道题也是简单dp里面的一种经典类型,递推式就是dp[i] = min(dp[i-150], dp[i-200], dp[i-350]) 代码如下: #include<iostream ...
 
随机推荐
- kissy使用注意事项
			
使用kissy注意: 下载kissy压缩包后只需要拷贝build包到项目中即可, 样式自己写不用引用. 1.4.x引这个文件seed-min.js1.3.x引kissy-min.js
 - Many To one   多对一
			
一.创建实体类:多方存一方的对象.set/get 二.编写对象的xml文件 别忘记在confg.xml映射! 三.编写接口 四.方法测试
 - Xcode 向6.0以后版本添加iOS开发空白模板
			
打开finder,找到应用程序,找到xcode 右键显示包内容.按照如下目录进行查找:Contents ▸ Developer ▸ Platforms ▸ iPhoneOS.platform ▸ De ...
 - 使用SqlDataAdapter时,需要注意的几点
			
1.SqlDataAdapter内部通过SqlDataReader获取数据,而默认情况下SqlDataReader不能获知其查询语句对应的数据库表名,所以下面的代码: string strConn,s ...
 - Tiny6410 交叉编译helloworld程序
			
在工作目录下建立helloworld.c文件 #include <stdio.h> main() { printf("helloworld!\n"); } 保存关闭后. ...
 - Injection Attacks-Log 注入
			
日志注入(也称日志文件注入) 很多应用都维护着一系列面向授权用户.通过 HTML 界面展示的日志,因而成为了攻击者的首要目标,这些攻击者试图伪装其他攻击.误导日志读者,甚至对阅读和分析日志监测应用的用 ...
 - win8.1下使用vmware workstation 来编译ffmpeg
			
先吐槽下,T440预装的win8.1 采用 UEFI+GPT分区导致 无法使用传统的EasyBCD来达到win+ubuntu双系统效果, 尝试了2天全部失败,等以后有时间了 买块U盘再干掉win8 现 ...
 - c++  孟岩推荐 书籍
			
c++ primer 中文版本 是 教程+参考书 扛梁之作c++ 标准程序库 对于c++熟手来说更为快捷effective c++ 永远是初学者必读的,但是c++11标准后的第四版,还未发布c++ ...
 - Qt xcode wrapper  Qios OpenFly
			
https://github.com/richardmg/QtWrapper https://github.com/richardmg/qios https://github.com/richardm ...
 - SQLite设置主键自动增长及插入语法
			
SQLite中,一个自增长字段定义为INTEGER PRIMARY KEY AUTOINCREMENT,那么在插入一个新数据时,只需要将这个字段的值指定为NULL,即可由引擎自动设定其值,引擎会设定为 ...