JZOJsenior4778.【NOIP2016提高A组模拟9.14】数列编辑器
来源:互联网 发布:软件用户手册 由谁来写 编辑:程序博客网 时间:2024/04/30 03:59
problem
Description
Input
Output
Sample Input
8
I 2
I -1
I 1
Q 3
L
D
R
Q 2
Sample Output
2
3
样例解释:
Data Constraint
analysis
考试时确确实实地蒙蔽了一把,woc……
首先,明显地,光标后面的数字对答案没有贡献,所以我们只维护光标前的数字就好了
诶?这不是栈咩?
我们使用双栈来实现,stack1表示光标前的序列,stack2表示光标后的序列
具体操作
- 插入:直接插进stack1
- 光标左移:把stack1的栈顶塞到stack2里面
- 光标右移:把stack2的栈顶塞到stack1里面
- 删除:stack1的栈顶出栈
至于询问,每次执行插进stack1的操作时维护前缀和以及max前缀和即可
code
#include<cstdio>#include<cstring>#include<algorithm>#define MAXN 1000001using namespace std;int stack1[MAXN],stack2[MAXN],ans[MAXN],sum[MAXN];int n,q,top1,top2;int main(){ //freopen("readin.txt","r",stdin); freopen("editor.in","r",stdin); freopen("editor.out","w",stdout); scanf("%d",&q); char ch=getchar(); memset(ans,128,sizeof(ans)); while (q--) { ch=getchar(); if (ch=='L' && top1>0) { stack2[++top2]=stack1[top1--]; } if (ch=='R' && top2>0) { stack1[++top1]=stack2[top2--]; sum[top1]=sum[top1-1]+stack1[top1]; ans[top1]=max(sum[top1],ans[top1-1]); } if (ch=='I') { scanf("%d", &n); stack1[++top1]=n; sum[top1]=sum[top1-1]+n; ans[top1]=max(sum[top1],ans[top1-1]); } if (ch=='Q') { scanf("%d",&n); printf("%d\n",ans[n]); } if (ch=='D')top1--; scanf("\n"); } return 0; }
阅读全文
0 0
- JZOJsenior4778.【NOIP2016提高A组模拟9.14】数列编辑器
- 数列编辑器 【NOIP2016提高A组模拟9.14】
- 【NOIP2016提高A组模拟9.14】数列编辑器
- 【NOIP2016提高A组模拟9.14】数列编辑器
- JZOJ 4778. 【NOIP2016提高A组模拟9.14】数列编辑器
- {题解}[jzoj4778]【NOIP2016提高A组模拟9.14】数列编辑器
- JZOJ.4778. 【NOIP2016提高A组模拟9.14】数列编辑器
- 【NOIP2016提高A组模拟9.14】排序
- 【NOIP2016提高A组模拟9.14】灌水
- 【NOIP2016提高A组模拟7.15】斐波那契数列(矩阵乘法)
- JZOJ 4777. 【NOIP2016提高A组模拟9.14】灌水
- JZOJsenior4777.【NOIP2016提高A组模拟9.14】灌水
- 【NOIP2016提高A组模拟7.15】立方体
- 计数【NOIP2016提高A组模拟7.15】
- 【NOIP2016提高A组模拟7.17】寻找
- 【NOIP2016提高A组模拟7.17】寻找
- 【NOIP2016提高A组模拟7.17】锦标赛
- 【NOIP2016提高A组模拟7.17】锦标赛
- 使用IntelliJ IDEA开发java web设置步骤
- 吐槽
- [设计]简单工厂模式
- 518抽奖软件源码之:检查文件名合法性
- 51nod 1154 回文串划分
- JZOJsenior4778.【NOIP2016提高A组模拟9.14】数列编辑器
- tar解压问题gzip: stdin: not in gzip format
- [设计]工厂模式
- unity的生命周期
- HTML:Input元素标签的详细介绍
- UVA 437 The Tower of Babylon
- [设计]抽象工厂模式
- 图片自动轮播+上拉加载下拉刷新+侧滑菜单+小圆点
- 大数据CDH之Oozie_10_03