单调队列与单调栈
wanherun
今天会有好事发生吗
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
bzoj3401 [Usaco2009 Mar]Look Up 仰望
题目求后面比自己大的第一个数。单调栈裸题,模拟一下就好了。#include<bits/stdc++.h>#define N 100000using namespace std;int n,A[N+5];int stk[N+5],top;int ans[N+5];inline char nc(){ static char buf[100000],*p1=buf,*p2=buf;原创 2017-10-10 22:46:02 · 282 阅读 · 0 评论 -
bzoj4385 [POI2015]Wilcze doły
题目bzoj上的单调队列第一题,维护一个单调栈,让里面长度为d,再更新答案。#include<bits/stdc++.h>#define N 2000005using namespace std;long long n,p,d;long long A[N+1],st,ans; long long q[N+1],l,r;inline char nc(){ static char原创 2017-10-07 12:17:41 · 275 阅读 · 0 评论 -
bzoj1113 [Poi2008]海报PLA
题目首先,答案的上界显然就为n。之后考虑如何减少——如果两张海报高度相同,之间的海报都比它高,答案就减少一。单调队列就可以了。#include<bits/stdc++.h>#define N 250000using namespace std;int n,tot;int tmp,x;int stk[N+1],top; inline char nc(){ static char原创 2017-09-26 10:51:39 · 298 阅读 · 0 评论 -
bzoj2096 [Poi2010]Pilots
题目又是单调队列,好常见呀。维护最大与最小即可。#include<bits/stdc++.h>#define N 3000000using namespace std;int n,A[N+1],k,tmp,ans;int mx[N+1],mn[N+1];int lx,rx,ln,rn;inline char nc(){ static char buf[100000],*p1=b原创 2017-09-24 21:06:40 · 304 阅读 · 0 评论 -
bzoj3048 [Usaco2013 Jan]Cow Lineup
题目 怕又是一道单调栈的题。。。之前考过,过来A一发。#include<bits/stdc++.h>#include<set>using namespace std;long long l,r,ans,n,k,tot;map<long long,long long>mp;long long flag[100010],a[100010];long long q[100010];int原创 2017-09-22 22:53:20 · 254 阅读 · 0 评论 -
bzoj4385 [POI2015]Wilcze doły
题目bzoj上的单调栈第一题,维护一个单调栈,让里面长度为d,再更新答案。#include<bits/stdc++.h>#define N 2000005using namespace std;long long n,p,d;long long A[N+1],st,ans; long long q[N+1],l,r;inline char nc(){ static char b原创 2017-09-22 22:46:43 · 342 阅读 · 0 评论
分享