有点恶心的模拟(代码写整齐一点不就好了)

以下情况算错:

1.运行中有数的绝对值大于1000000000

2.除以和取模的时候第一个数为0

3.取栈顶元素时栈内元素不够

上代码

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<stack>
#define G if(top==0) { flag=1; break; }//取模和除以的时候第一个数等于0
using namespace std;
stack<long long>s;
,p,n,y[];
],a;
) return false; return true; }//栈内元素是否少于一个
) return false; return true; }//栈内元素是否少于两个
void Do() { s.pop(); b=s.top(); s.pop(); }
void Clear() { if(s.size()) s.pop(); }
void f(long long x)
{
    Clear(); s.push(x); flag=;//flag=1相当于错误
    ;i<=m;i++)//进行每一个操作
    {
        a=w[i];
        if(s.size()) top=s.top();
        //压行大法好
        if(a=="END") break;
        if(a=="NUM") s.push(y[i]);
        if(a=="POP"&&E1()) s.pop();
        if(a=="INV"&&E1()) { s.pop(); s.push(-top); }
        if(a=="DUP"&&E1()) s.push(top);
        if(a=="SWP"&&E2()) { Do(); s.push(top); s.push(b); }
        if(a=="ADD"&&E2()) { Do(); s.push(top+b); E2(); }
        if(a=="SUB"&&E2()) { Do(); s.push(b-top); E2(); }
        if(a=="MUL"&&E2()) { Do(); s.push(b*top); E2(); }
        if(a=="DIV"&&E2()) { Do(); G; s.push(b/top); E2(); }
        if(a=="MOD"&&E2()) { Do(); G; s.push(b%top); E2(); }
        ) { flag=; break; }
    }
    ||flag) printf("ERROR\n");//错误
    else printf("%lld\n",s.top());
}
int main()
{
    while(cin>>w[++m])//读入
    {
        if(w[m]=="END") break;
        if(w[m]=="NUM") { scanf("%lld",&y[m]); }
    }
    scanf("%lld",&n);
    ;i<=n;i++) { scanf("%lld",&p); f(p); }
    ;
}

P2186 小Z的函数栈的更多相关文章

  1. P2186 小Z的栈函数

    P2186 小Z的栈函数 题目描述 小Z最近发现了一个神奇的机器,这个机器的所有操作都是通过维护一个栈来完成的,它支持如下11个操作: NUM X:栈顶放入X. POP:抛弃栈顶元素. INV:将栈顶 ...

  2. [洛谷P2186] 小Z的栈函数

    题目链接: 传送门 题目分析: 大模拟,先得存操作,然后再处理每个数-- 有一个小优化,在处理操作的时候顺便判一下最后栈里是不是有且仅有一个数,但A完了才想起来,所以就算了-- 总之就是个模拟题--没 ...

  3. 洛谷 2186 小Z的栈函数

    https://www.luogu.org/problem/show?pid=2186 题目描述 小Z最近发现了一个神奇的机器,这个机器的所有操作都是通过维护一个栈来完成的,它支持如下11个操作: N ...

  4. 小Z爱序列(NOIP信(sang)心(bin)赛)From FallDream(粗制单调队列&单调栈的算法解析)

    原题: 小Z最擅长解决序列问题啦,什么最长公共上升然后下降然后上升的子序列,小Z都是轻松解决的呢. 但是小Z不擅长出序列问题啊,所以它给了你一道签到题. 给定一个n个数的序列ai,你要求出满足下述条件 ...

  5. 【20170521校内模拟赛】热爱生活的小Z

    学长FallDream所出的模拟赛,个人感觉题目难度还是比较适中的,难度在提高+左右,可能比较接近弱省省选,总体来讲试题考查范围较广,个人认为还是很不错的. 所有试题如无特殊声明,开启-O2优化,时限 ...

  6. BZOJ 2038 小Z的袜子(hose) 莫队算法模板题

    题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=2038 题目大意: 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中 ...

  7. broadcom6838开发环境实现函数栈追踪

    在嵌入式设备开发中.内核为内核模块的函数栈追踪已经提供了非常好的支持,但用户层的函数栈追踪确没有非常好的提供支持. 在网上收集学习函数栈跟踪大部分都是描写叙述INTER体系架构支持栈帧的实现机制.或者 ...

  8. 【20170920校内模拟赛】小Z爱学习

    所有题目开启-O2优化,开大栈空间,评测机效率为4亿左右. T1 小 Z 学数学(math) Description ​ 要说小 Z 最不擅长的学科,那一定就是数学了.这不,他最近正在学习加法运算.老 ...

  9. 小Z爱图论(NOIP信(sang)心(bin)赛)From FallDream

    题目: 小Z最近喜欢上了图论,于是他研究了一下图的连通性问题.但是他遇到了一个难题. 给定一个n个点的有向图,求有多少点对(i,j)满足从i点出发能到达点j ? 小Z仅会简单的朴素算法,所以他想问问你 ...

随机推荐

  1. Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'infor

    今天在Navicat上执行SQL增删改查数据操作的时候出现了下面这个问题 Expression #1 of ORDER BY clause is not in GROUP BY clause and ...

  2. kafka 重放 重播 从某个时间点或者offset开始消费

    转自: https://www.jianshu.com/p/932663e9a226 consumer.subscribe(topicA); consumer.poll(100);//正常订阅topi ...

  3. [01]从零开始学 ASP.NET Core 与 EntityFramework Core 课程介绍

    从零开始学 ASP.NET Core 与 EntityFramework Core 课程介绍 本文作者:梁桐铭- 微软最有价值专家(Microsoft MVP) 文章会随着版本进行更新,关注我获取最新 ...

  4. swoole中http_server的配置与使用

    swoole中为我们提供了一个swoole_http_server类,方便我们处理http请求. 但是它对http协议的支持并不完整,所以一般建议在前面加一层nginx进行代理,对于php文件的处理交 ...

  5. pandas 学习 第6篇:DataFrame - 数据处理(长宽格式、透视表)

    长宽格式的转换 宽格式是指:一列或多列作为标识变量(id_vars),其他变量作为度量变量(value_vars),直观上看,这种格式的数据比较宽,举个列子,列名是:id1.id2.var1.var2 ...

  6. DVR登录绕过漏洞_CVE-2018-9995漏洞复现

    DVR登录绕过漏洞_CVE-2018-9995漏洞复现 一.漏洞描述 此漏洞允许攻击者通过修改”Cookie:uid=admin”之后访问特定DVR的控制面板,返回此设备的明文管理员凭证. 二.影响软 ...

  7. Java开发桌面程序学习(11)——javafx 鼠标点击,右击,双击

    javafx 鼠标事件 给某个控件设置鼠标点击监听器,三个条件分别判断为单击,右击还是双击 单击判断 event.getButton()==MouseButton.PRIMARY 右击判断 event ...

  8. .net core的服务器模式和工作站模式

    来源:济南小老虎 .NET Core是一个开源通用的开发框架,具有跨平台能力,我们在享受其性能飙升的同时,也面临了一些问题.通过观察 NetCore 程序的线上运行情况发现 ,负载高的情况下应用程序占 ...

  9. Z从壹开始前后端分离【 .NET Core2.0/3.0 +Vue2.0 】框架之四 || Swagger的使用 3.2

    本文梯子 本文3.0版本文章 前言 一.swagger的一般用法 0.设置swagger页面为首页——开发环境 1.设置默认直接首页访问 —— 生产环境 2.为接口添加注释 3.对 Model 也添加 ...

  10. SpringCloud Gateway拦截器遇到的小坑汇总

    很多朋友在使用SpringCloudGateway的时候可能都碰到过以下几个问题 SpringCloudGateway中如何读取Post请求体 private BodyInserter getBody ...