Ural 1126. Magnetic Storms
2013-05-30 14:44
351 查看
PRO IS HERE
单调队列;
维护区间长最大m的一个单调递减队列。
CODE:
单调队列;
维护区间长最大m的一个单调递减队列。
CODE:
#include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #include<vector> #include<set> #include<queue> #include<map> #include<sstream> #include<iostream> using namespace std; #define FOR(i,a,b) for(int (i)=(a);(i)<=(b);(i)++) #define DOR(i,a,b) for(int (i)=(a);(i)>=(b);(i)--) #define bug puts("Fuck"); #define LL long long #define pb push_back #define mp make_pair #define nMax 200010 #define eps 1e-8 #define inf 0x7fffffff int que[nMax],l,r,a[nMax]; int n,m; int main(){ #ifndef ONLINE_JUDGE freopen("input.txt","r",stdin); // freopen("output.txt","w",stdout); #endif while(~scanf("%d",&m)){ n=0; while(scanf("%d",&a ),a !=-1) n++; l=r=0; que[r++]=0; for(int i=1;i<n;i++) { if(i-que[l] >= m) l++; while(a[que[r-1]]<a[i] && l<r) r--; que[r++]=i; if(i>=m-1) printf("%d\n",a[que[l]]); } } return 0; }
相关文章推荐
- ural 1126. Magnetic Storms
- Ural 1126. Magnetic Storms
- ural 1126 Magnetic Storms
- Ural1126-Magnetic Storms
- Ural 1126 Magnetic Storms
- Ural 1126. Magnetic Storms
- Ural 1126. Magnetic Storms 单调队列
- ural 1126. Magnetic Storms(双向队列)
- Ural_1126. Magnetic Storms 单调队列
- 1126. Magnetic Storms(单调队列)
- ural 1126
- ural 1126【单调队列基础】
- 1126. Magnetic Storms(单调队列)
- 1126. Magnetic Storms(单调队列)
- ural 1073. Square Country
- [ACM] ural 1057 Amount of degrees (数位统计)
- 【URAL 刷题记】URAL 1028 ~ URAL 1035
- Ural-1146Maximum Sum-最大子矩阵
- ural 2064. Caterpillars
- ural 1144. The Emperor's Riddle