http://www.lydsy.com/JudgeOnline/problem.php?id=1571

dp[i][j]表示前i个时间,能力为j所能达到得最大滑雪次数

预处理出,需要能力$<=c$的滑坡滑行的最少时间的坡花费的时间

dp转移,三种情况

1 喝coco汁

2 滑雪

3 学习课程

具体看代码

#include<cstdio>
#include<cstring>
#include<algorithm> const int maxn = ;
int t,s,n;
inline int read() {
int x=;char c=getchar();
while(c<''||c>'') c=getchar();
while(c<=''&&c>='') x=x*+c-'',c=getchar();
return x;
}
struct node{
int s,t,val;
}cla[maxn];
struct ppop {
int c,d;
}po[maxn];
int dp[maxn][];
int b[maxn];
int main() {
t=read(),s=read(),n=read();int st=;
for(int i=;i<=s;++i) {
cla[i].s=read(),cla[i].t=read(),cla[i].val=read();
st=std::max(st,cla[i].val);
}
std::memset(b,0x3f,sizeof b);
for(int i=;i<=n;++i) {
po[i].c=read(),po[i].d=read();
b[po[i].c]=std::min(b[po[i].c],po[i].d);
}
for(int i=;i<=st;++i) b[i]=std::min(b[i],b[i-]);
for(int i=;i<=t;++i) {
for(int j=;j<=st;++j) {
dp[i][j]=-;
}
}
dp[][]=;
for(int i=;i<=t;++i) {
for(int j=;j<=st;++j) { //the stution have not be down
if(dp[i][j]<)continue;
dp[i+][j]=std::max(dp[i][j],dp[i+][j]);//drink coco;
if(i+b[j]<=t)//the time of ski
dp[i+b[j]][j]=std::max(dp[i+b[j]][j],dp[i][j]+);
for(int k=;k<=s;k++)// study
if(i>=cla[k].s&&i+cla[k].t<t)
dp[i+cla[k].t][cla[k].val]=std::max(dp[i+cla[k].t][cla[k].val],dp[i][j]);
}
}
int ans=;
for(int i=;i<=st;++i) {
ans=std::max(ans,dp[t][i]);
}
printf("%d\n",ans);
return ;
}

bzoj 1571: [Usaco2009 Open]滑雪课的更多相关文章

  1. BZOJ——1571: [Usaco2009 Open]滑雪课Ski

    http://www.lydsy.com/JudgeOnline/problem.php?id=1571 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit:  ...

  2. BZOJ 1571: [Usaco2009 Open]滑雪课Ski

    Description Farmer John 想要带着 Bessie 一起在科罗拉多州一起滑雪.很不幸,Bessie滑雪技术并不精湛. Bessie了解到,在滑雪场里,每天会提供S(0<=S& ...

  3. bzoj 1571: [Usaco2009 Open]滑雪课Ski【dp】

    参考:https://blog.csdn.net/cgh_andy/article/details/52506738 没有get到什么重点的dp--做的莫名其妙 注意滑雪一个坡可以滑很多次 设f[i] ...

  4. 【BZOJ】1571: [Usaco2009 Open]滑雪课Ski

    [算法]动态规划 [题解]yy出了O(1w log 1w)的算法. 将雪坡排序预处理出g[i]表示能力值为i的最短时长雪坡. 这样就可以定义work(t,c)表示时长t能力c的最多滑雪数量,work( ...

  5. 1571. [Usaco2009 Open]滑雪课Ski

    传送门 可以想到 $dp$,设 $f[i][j]$ 表示当前等级为 $i$,时间为 $j$ 的最大滑雪次数 显然上课不会上让自己等级降低的课,所以第一维 $i$ 满足无后效性 然后直接枚举 $i,j$ ...

  6. [bzoj1571][Usaco2009 Open]滑雪课Ski

    题目描述 Farmer John 想要带着 Bessie 一起在科罗拉多州一起滑雪.很不幸,Bessie滑雪技术并不精湛. Bessie了解到,在滑雪场里,每天会提供S(0<=S<=100 ...

  7. 【贪心优化dp决策】bzoj1571: [Usaco2009 Open]滑雪课Ski

    还有贪心优化dp决策的操作…… Description Farmer John 想要带着 Bessie 一起在科罗拉多州一起滑雪.很不幸,Bessie滑雪技术并不精湛. Bessie了解到,在滑雪场里 ...

  8. bzoj千题计划156:bzoj1571: [Usaco2009 Open]滑雪课Ski

    http://www.lydsy.com/JudgeOnline/problem.php?id=1571 DP不一定全部全状态转移 贪心的舍去一些不合法的反而更容易转移 在一定能力范围内,肯定滑雪所需 ...

  9. [USACO2009 OPEN] 滑雪课 Ski Lessons

    洛谷P2948 看到题目就觉得这是动规但一直没想到如何状态转移……看了别人的题解之后才有一些想法 f[i][j]:前i单位时间能力值为j可以滑的最多次数 lessons[i][j]:结束时间为i,获得 ...

随机推荐

  1. Quorum机制与NRW算法总结

    Quorum机制与NRW算法总结 1.Quorum机制 Quorum,原指为了处理事务.拥有做出决定的权力而必须出席的众议员或参议员的数量(一般指半数以上). 2.NRW算法 NRW算法是基于Quor ...

  2. 【Gray Code】cpp

    题目: The gray code is a binary numeral system where two successive values differ in only one bit. Giv ...

  3. IOS开发学习笔记019-动态创建控件

    动态创建控件 一.按钮 二.文本输入框 三.lable标签 注意: 只是简单的拖拽控件会毁了你,所以最好还是手动通过代码创建控件. 如果要通过代码生成按钮的话,可以在系统自带的函数viewDidLoa ...

  4. 【LoadRunner】对摘要认证的处理

    近期项目中,进行http协议的接口性能测试过程中,需要进行登录接口的摘要认证,分享一下测试经验. 测试准备 测试工具:LoadRunner11 测试类型:接口测试--某系统登录接口 步骤 根据系统接口 ...

  5. android AsyncTask使用限制

    由于AsyncTask内部是使用线程池(ThreadPoolExecutor)来管理要处理的任务的,所以AsyncTask的弊端就非常明确了:要extcute的任务数量超过线程池最大容量时,必然会报错 ...

  6. jquery的html、text、val的用法

    .html()用为读取和修改元素的HTML标签 .text()用来读取或修改元素的纯文本内容 .val()用来读取或修改表单元素的value值. 这三个方法功能上的对比 .html(),.text() ...

  7. poj 2251 Dungeon Master 3维bfs(水水)

    Dungeon Master Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 21230   Accepted: 8261 D ...

  8. java 数据库连接 驱动相关参数

    mysql: driverClass=com.mysql.jdbc.Driver connectionURL=jdbc:mysql://localhost:3306/shiro userId=root ...

  9. golang 高级

    下面的EmployeeByID函数将根据给定的员工ID返回对应的员工信息结构体的指针.我们可以使用点操作符来访问它里面的成员: func EmployeeByID(id int) *Employee ...

  10. 如何通过IP地址分辨公网、私网、内网、外网

    如何通过IP地址分辨公网.私网.内网.外网   内.外网是相对于防火墙而言的,在防火墙内部叫做内网,反之就是外网.   在一定程度上外网等同于公网,内网等同于私网.   地址为如下3个区域就是处于私网 ...