题意:Bessie去滑雪,限时T,滑雪场有S节课

   每节课开始于$m_i$,长度为$l_i$,可以将Bessie的能力值变成$a_i$(注意是变成不是增加)

   有n个滑雪坡,去滑雪需要$c_i$的能力,并且耗时$d_i$

   问Bessie最多能滑几次雪

一看这么多变量,很显然就是DP啦(只是不会而已)

变量:时间,课程,坡,能力,次数(额,咋设状态呢。。。。)

#include<cstdio>
#include<iostream>
#include<cstring>
#include<cctype>
#include<algorithm>
using namespace std;
#define int long long
#define olinr return
#define _ 0
#define love_nmr 0
#define DB double
inline int read()
{
int x=,f=;
char ch=getchar();
while(!isdigit(ch))
{
if(ch=='-')
f=-f;
ch=getchar();
}
while(isdigit(ch))
{
x=(x<<)+(x<<)+(ch^);
ch=getchar();
}
return x*f;
}
inline void put(int x)
{
if(x<)
{
x=-x;
putchar('-');
}
if(x>)
put(x/);
putchar(x%+'');
}
int t;
int s;
int n;
int f[][]; //f[i][j]表示到i时刻,能力值为j的最多滑雪次数
int ks[][]; //ks[i][j]表示在i时刻结束,获得j能力的课程的最晚开始时间
int g[]; //g[i]表示到i时刻的最多滑雪次数
int st[]; //st[i]表示能力值>=i的最短滑雪时间
signed main()
{
t=read();
s=read();
n=read();
for(int a,b,c,i=;i<=s;i++) //预处理ks
{
a=read();
b=read();
c=read();
ks[a+b-][c]=max(ks[a+b-][c],a);
}
memset(st,0x3f,sizeof st);
for(int a,b,i=;i<=n;i++) //预处理st
{
a=read();
b=read();
for(int j=;j>=a;j--)
st[j]=min(st[j],b);
}
memset(f,-0x3f,sizeof f); //初始值
f[][]=g[]=; //初始能力为1
for(int i=;i<=t;i++)
for(int j=;j<=;j++)
{
f[i][j]=f[i-][j]; //啥也不干QAQ
if(ks[i-][j]) f[i][j]=max(f[i][j],g[ks[i-][j]]); //表示在前一分钟刚刚上完课,niubi了
if(i-st[j]>=) f[i][j]=max(f[i][j],f[i-st[j]][j]+); //去滑雪
g[i]=max(g[i],f[i][j]); //每次更新
}
put(g[t]);
olinr ~~(^_^)+love_nmr;
}

P2948 [USACO09OPEN]滑雪课Ski Lessons的更多相关文章

  1. [USACO09OPEN]滑雪课Ski Lessons

    题目描述 Farmer John wants to take Bessie skiing in Colorado. Sadly, Bessie is not really a very good sk ...

  2. [luoguP2948] [USACO09OPEN]滑雪课Ski Lessons(DP)

    传送门 f[i][j]表示i时刻能力值为j的最大滑雪数 显然f[0][1]=0,开始搜索 三种转移: ①美美的喝上一杯**:f[i+1][j]=max(f[i+1][j],f[i][j]) ②滑雪,f ...

  3. [USACO2009 OPEN] 滑雪课 Ski Lessons

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. Jenkins构建触发器定时Poll SCM、Build periodically

    一.时间设置语法 时间设置由5位组成:* * * * * 第一位:表示分钟,取值0-59. 第二位:表示小时,取值0-23. 第三位:表示日期,取值1-31. 第四位:表示月份,取值1-12. 第五位 ...

  2. python 面向对象之反射及内置方法

    面向对象之反射及内置方法 一.静态方法(staticmethod)和类方法(classmethod) 类方法:有个默认参数cls,并且可以直接用类名去调用,可以与类属性交互(也就是可以使用类属性) 静 ...

  3. NDK 编译报错:request for member 'FindClass' in something not a structure or union

    ndk编译 xx.c文件时一直报下面的错误: ”request for member 'FindClass' in something not a structure or union ...” 原因 ...

  4. 3-在EasyNetQ上使用SSL连接(黄亮翻译)

    EasyNetQ可以通过SSL进行连接.这篇指南的作者Gordon Coulter最初为回应一个提问写的. 首先,你必须仔细依据https://www.rabbitmq.com/ssl.html文章中 ...

  5. 工作的时候用到spring返回xml view查到此文章亲测可用

    spring mvc就是好,特别是rest风格的话,一个 org.springframework.web.servlet.view.ContentNegotiatingViewResolver就可以根 ...

  6. CURD 操作 [2]

    一.数据读取 在之前的课程中,我们已经大量使用了数据读取的功能,比如 select()方法.结合各种连贯方法可以实现数据读取的不同要求,支持连贯的方法有: 1.where,查询或更新条件:2.tabl ...

  7. varnish安装

    安装pcrevarnish 依赖pcre进行url正则匹配. cd pcre-8.12./configure --prefix=/usr/local/make&&make instal ...

  8. 旋转矩阵(Rotate Matrix)的性质分析

    博客转载自:http://www.cnblogs.com/caster99/p/4703033.html 学过矩阵理论或者线性代数的肯定知道正交矩阵(orthogonal matrix)是一个非常好的 ...

  9. Entity Framework Tutorial Basics(38):Explicit Loading

    Explicit Loading with DBContext Even with lazy loading disabled, it is still possible to lazily load ...

  10. 自定义select样式

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...