USACO 2009 Open SkiLessons
来源:互联网 发布:c语言接口 编辑:程序博客网 时间:2024/05/17 22:47
我们定义dp[i][j]为当能力为i,时间为j时滑过的最多的次数(也是个很显然的定义嘛)
初值为dp[1][0]=0,然后对于每个时间,有上课,滑雪,看小说三个方法,相应的搞一下就好了.
把课程捆起来放到vector里,滑雪的时间,我们可以得到一个在能力为i时,花的最少时间Ski[i](当然越少越好)
就是以下代码了.
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<vector>#define M 10005#define N 105using namespace std;struct W{ int A,t;};vector<W>Lesson[M];int dp[N][M],Ski[N];void check(int &x,int y){ if(x==-1||x<y)x=y;}int main(){ int t,s,n; scanf("%d %d %d",&t,&s,&n); for(int i=1;i<=s;i++){ int st,len,a; scanf("%d %d %d",&st,&len,&a); Lesson[st].push_back((W){a,len}); } memset(Ski,127,sizeof(Ski)); for(int i=1;i<=n;i++){ int a,t; scanf("%d %d",&a,&t); Ski[a]=min(Ski[a],t); } for(int i=1;i<N;i++)Ski[i]=min(Ski[i-1],Ski[i]); memset(dp,-1,sizeof(dp)); dp[1][0]=0; for(int i=0;i<t;i++) for(int j=0;j<N;j++) if(dp[j][i]!=-1){ check(dp[j][i+1],dp[j][i]); for(int l=0;l<Lesson[i].size();l++){ W now=Lesson[i][l]; int A=now.A,T=now.t; check(dp[A][i+T],dp[j][i]); } if(i+Ski[j]<=t)check(dp[j][i+Ski[j]],dp[j][i]+1); } int ans=0; for(int i=0;i<N;i++) for(int j=0;j<=t;j++) ans=max(ans,dp[i][j]); printf("%d\n",ans); return 0;}
0 0
- USACO 2009 Open SkiLessons
- Ski Lessons, 2009 Open,usaco
- USACO 2009 Open Gold 2.Work Scheduling
- BZOJ1233【usaco open 2009】干草堆 tower
- 【USACO】2009 Open Work Scheduling 工作安排
- 【USACO】2009 Open Ski Lessons 滑雪课程
- 【USACO OPEN 10】hop
- 【USACO OPEN 10】hop
- 【USACO】2016 Open 262144
- USACO 2009 Open Silver 3.Cow Digit Game简单博弈论
- 照片 usaco 2013 open photo
- 【usaco 2013 open yinyang】阴阳
- USACO 2016 open【Field Reduction】
- USACO 2007 OPEN Dining 奶牛晚宴
- USACO 2004 OPEN Moofest 奶牛集会
- poj 3279 Filptile (USACO 2007 Open Silver)
- USACO 2015 US OPEN BRONZE 铜组 题解
- 【usaco 2013 open】【JZOJ 3234】 阴阳
- 点击切换图片
- QT 拖放QListWidget内的Item(效果类似剪切)
- 远程连不上可能解决方案
- 富文本常用封装(NSAttributedString浅析)
- python在hadoop上运行
- USACO 2009 Open SkiLessons
- 关于HDC和CDC
- 谁能撼动美国男篮霸主地位?东京奥运看这四队
- 抓包技术-速成
- 将搜索二叉树转换成双向链表
- 图与图算法在实际中的应用
- DB,Cache和Redis应用场景分析
- 不定宽高的水平和竖直同时居中
- Weka源码开发01——初识Weka及其源码开发