单调队列 bzoj3126 [Usaco2013 Open]Photo
来源:互联网 发布:易建联卧推体测数据 编辑:程序博客网 时间:2024/06/07 23:17
传送门,貌似是权限题,然而我是OwO
如果我们处理每一个点,那这个点可以从前一段能转移的地方转移过来。
因为每个区间只有一个,所以上一个必须是从之前自己不属于的区间转移过来。也就是左侧所有右端点没到自己的区间左端点的最小值(再小就不保证这些区间里定有一个点了),最右就是所有右端点在自己右边的区间左端点的最小值(一个区间最多有一个)。然后单调队列推入点,找到符合左右区间要求的最大值(套路)即可。最后答案只要枚举到n+1,而n+1的转移范围是1~n,即可找到最大值。
#include <cstdio>#include <cstdlib>#include <cstring>#include <iostream>#include <algorithm>#define N 100005using namespace std;struct node{int l,r;}a[N];int n,m,L[N*2],R[N*2],f[N*2],h,t,q[N*2];inline bool cmp(node x,node y){return x.r<y.r;}int main(){ scanf("%d%d",&n,&m); for(int i=1;i<=m;i++)scanf("%d%d",&a[i].l,&a[i].r); sort(a+1,a+m+1,cmp); int l=0; for(int i=1,j=1;i<=n;i++) { while(j<=m&&a[j].r<i)l=max(l,a[j].l),j++; L[i]=l; } L[n+1]=1; l=n; for(int i=n,j=m;i>=1;i--) { while(a[j].r>=i&&j)l=min(l,a[j].l-1),j--; R[i]=l; } R[n+1]=n; for(int i=1,j=0;i<=n+1;i++) { for(;j<=R[i]&&j<i;j++) { if(f[j]==-1)continue; while(h<=t&&f[j]>f[q[t]])t--; q[++t]=j; } while(h<=t&&q[h]<L[i])h++; if(h<=t)f[i]=f[q[h]]+(i!=n+1); else f[i]=-1; } cout<<f[n+1];}
阅读全文
0 0
- bzoj3126[Usaco2013 Open]Photo 单调队列+dp
- 单调队列 bzoj3126 [Usaco2013 Open]Photo
- [Usaco2013 Open]Photo(dp+单调队列)
- bzoj 3126: [Usaco2013 Open]Photo (DP+单调队列)
- BZOJ3126 单调队列DP
- bzoj 3126: [Usaco2013 Open]Photo dp
- bzoj3048[Usaco2013 Jan]Cow Lineup 单调队列
- [BZOJ3048][Usaco2013 Jan]Cow Lineup(单调队列)
- 【bzoj 3048】[Usaco2013 Jan]Cow Lineup(单调队列)
- BZOJ 3048: [Usaco2013 Jan]Cow Lineup 单调队列
- bzoj3048: [Usaco2013 Jan]Cow Lineup(单调队列)
- BZOJ_P3048 [Usaco2013 Jan]Cow Lineup(二分答案+树状数组/单调队列)
- UVA 11078 - Open Credit System(单调队列)
- BZOJ_P2442 [Usaco2011 Open]修剪草坪(单调队列)
- bzoj2442: [Usaco2011 Open]修剪草坪(单调队列优化dp)
- 【bzoj2442】【Usaco2011 Open】修剪草坪【dp+单调队列】
- 2442: [Usaco2011 Open]修剪草坪 单调队列优化DP
- bzoj 2442: [Usaco2011 Open]修剪草坪 单调队列优化dp
- MQL5-架构和类以及界面
- JS异步加载
- OpenGL状态机的概念理解
- 用 Ansible 部署无服务应用!
- 字符数组与字符指针
- 单调队列 bzoj3126 [Usaco2013 Open]Photo
- web框架的原理以及web框架的实现(python)
- ## border-radius ##
- 分数阶导数
- Spring Cloud Eureka
- js:了解闭包,所向披靡!
- CUDA矩阵乘法
- Java并发编程总结——慎用CAS详解
- 某P保护之调戏权限清0的学习