HDOJ -- 4699
Editor
Time Limit: 3000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 1236 Accepted Submission(s): 391

I 2
I -1
I 1
Q 3
L
D
R
Q 2
3
The following diagram shows the status of sequence after each instruction:

#include<stack>
#include<cstdio>
#include<cstring>
#define MAX 1000005
using namespace std;
stack<int>l, r;
long long int dp[MAX], sum[MAX], n, temp;
char str[];
int main(){
freopen("in.c", "r", stdin);
while(~scanf("%lld", &n)){
while(!l.empty()) l.pop();
while(!r.empty()) r.pop();
memset(sum, , sizeof(sum));
memset(dp, , sizeof(dp));
dp[] = -;
for(int i = ;i < n;i ++){
scanf("%s", str);
if(str[] == 'I'){
scanf("%lld", &temp);
l.push(temp);
sum[l.size()] = sum[l.size()-] + temp;
dp[l.size()] = max(sum[l.size()], dp[l.size()-]);
}else if(str[] == 'L'){
if(!l.empty()){
int del = l.top();
l.pop();
r.push(del);
}
}else if(str[] == 'Q'){
scanf("%lld", &temp);
temp = min(temp, (long long int)l.size());
l.size() == ? printf("0\n") : printf("%lld\n", dp[temp]);
}else if(str[] == 'D') l.pop();
else{
if(!r.empty()){
int del = r.top();
r.pop();
l.push(del);
sum[l.size()] = sum[l.size()-] + del;
dp[l.size()] = max(sum[l.size()], dp[l.size()-]);
}
}
}
}
}
HDOJ -- 4699的更多相关文章
- HDU/HDOJ 4699 Editor
对顶栈算法. 此题充分说明了cin的不中以及scanf的优越性. 我TM用cin超时了!!!换成scanf就A了!!! #include <cstdio> #include <cst ...
- HDOJ 4699 Editor 栈 模拟
用两个栈模拟: Editor Time Limit: 3000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) ...
- HDOJ 4699 Editor 对顶栈模拟
Editor Time Limit: 3000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Total Subm ...
- HDOJ 1009. Fat Mouse' Trade 贪心 结构体排序
FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- HDOJ 2317. Nasty Hacks 模拟水题
Nasty Hacks Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- HDOJ 1326. Box of Bricks 纯水题
Box of Bricks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- HDOJ 1004 Let the Balloon Rise
Problem Description Contest time again! How excited it is to see balloons floating around. But to te ...
- hdoj 1385Minimum Transport Cost
卧槽....最近刷的cf上有最短路,本来想拿这题复习一下.... 题意就是在输出最短路的情况下,经过每个节点会增加税收,另外要字典序输出,注意a到b和b到a的权值不同 然后就是处理字典序的问题,当松弛 ...
- HDOJ(2056)&HDOJ(1086)
Rectangles HDOJ(2056) http://acm.hdu.edu.cn/showproblem.php?pid=2056 题目描述:给2条线段,分别构成2个矩形,求2个矩形相交面 ...
随机推荐
- iOS 高级开发 runtime(三)
三 .动态添加方法 我们可以通过runtime动态地添加方法.那么到底啥叫动态添加方法呢?动态添加方法就是当我们程序运行时才知道我们应该调用哪个方法.我们首先需要了解这一点,当我们编写完一段代码后,我 ...
- Spring学习之代理
Spring的核心就是IOC和AOP IOC就是控制反转: 就是用配置文件的方式给javabean 赋值. 正常的在程序里;用new 的方式创建一个对象的时候,他就固定了值, 如果是注入的方式的话 ...
- EOF是什么?
转自http://www.ruanyifeng.com/blog/2011/11/eof.html 学习C语言的时候,遇到的一个问题就是EOF. 它是end of file的缩写,表示"文字 ...
- 清理SQL多余登录信息
服务器列表.登陆帐户.密码等信息都记录在 %AppData%\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin (2008)%A ...
- 破解https和https原理
http://blog.csdn.net/cch5487614/article/details/6364711 http://www.jb51.net/network/68135.html
- 在Laravel5.* 中使用 AdminLTE
在Laravel5.* 中使用 AdminLTE AdminLTE是一个很棒的单纯的由 HTML 和 CSS 构建的后台模板,在这片文章中,我将讲述如何将 AdminLTE 和 Laravel 优雅的 ...
- cmake 安装 mysql
因为高版本mysql都用cmake安装,另外安装cluster版的mysql也必须通过cmake安装,所以学习cmake安装mysql很有必要. 今天我因为打算搭配一个mysql集群所以,在虚拟机上安 ...
- ecshop改造读写分离
前两天配置好了mysql主从方式,今天就拿ecshop练习读写分离.以下代码仅供学习参考,不成熟的地方,还需完善. config.php <?php $db_name = "ecsho ...
- Linux文件3个时间点(access time,modify time,change time)
在Linux中使用stat命令来查看文件的详细信息. 如图所示,会出现3个类型的时间,分别是Access,Modify,Change. access time:表示最后一次访问(仅仅是访问,没有改动) ...
- Rewrite Path in Asp.Net MVC Project
// Change the current path so that the Routing handler can correctly interpret // the request, then ...