ACM 正负大数的读入外挂模板+单调队列模板
来源:互联网 发布:西门子300plc编程软件 编辑:程序博客网 时间:2024/05/22 01:47
#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <cmath>#include <set>#include <map>#include <queue>#define PI acos(-1.0)#define LINF 1000000000000000000LL#define eps 1e-8#define LL long long#define MAXN 1000010 using namespace std;const int INF=0x3f3f3f3f;LL read(){LL x=0,f=1;char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}return x*f;}LL n,k;LL a[MAXN],q1[MAXN],q2[MAXN],ans1[MAXN],ans2[MAXN];//q1:单调递增队列 q2:单调递减队列 int l1=1,l2=1,r1,r2; int main(){n=read();k=read();//scanf("%lld%lld",&n,&k);for(int i=1;i<=n;i++)a[i]=read();for(int i=1;i<=n;i++){while(l1<=r1&&q1[l1]<=i-k) l1++;while(l2<=r2&&q2[l2]<=i-k) l2++;while(l1<=r1&&a[i]<a[q1[r1]]) r1--;q1[++r1]=i;while(l2<=r2&&a[i]>a[q2[r2]]) r2--;q2[++r2]=i;ans1[i]=a[q1[l1]];ans2[i]=a[q2[l2]];}for(int i=k;i<=n;i++) printf("%lld ",ans1[i]);puts("");for(int i=k;i<=n;i++) printf("%lld ",ans2[i]);puts("");return 0;}
0 0
- ACM 正负大数的读入外挂模板+单调队列模板
- 正负数读入优化模板
- 输入外挂模板(适用于正负数)
- 单调队列模板
- 单调队列模板
- 单调队列模板
- c++ 大数模板 acm
- ACM 外挂模板技巧篇
- 有一定通用性的单调队列模板
- 大数模板(读入字符串,c++重载)
- 读入优化的模板
- 单调队列模板(poj2823)
- ACM C++读写外挂模板 读写优化
- 多重背包模板--二进制优化模板&&单调队列优化模板
- 完全正负大数模板(正负数加减乘除求模运算)~~~~~
- ACM大数的高精度模板一套,来自zju
- poj 2823单调队列模板题
- poj 2823 - Sliding Window【单调队列模板】
- 一起来学嵌入式之ARM9中断机制-中断信号处理过程及实例
- matlab转C++ matlab与C++混合编程
- NSFetchedResultController讲解
- c++中判断字符串中是否含有字符'\'
- noip2001 装箱问题 (01背包)
- ACM 正负大数的读入外挂模板+单调队列模板
- 数据结构之队列
- Billboard 线段树更新叶子节点
- 面试题20顺时针打印矩阵
- poj 1475 Pushing Boxes(bfs)
- Dungeon Master
- Android:学习笔记(一)
- Excel Sheet Column Number
- Unity3D汽车物理引擎的安卓重力感应适配