• 复习题之后缀表达式


    洛谷 P1449 后缀表达式

    • 难度普及-
    • 时空限制1s / 128MB

    所谓后缀表达式是指这样的一个表达式:式中不再引用括号,运算符号放在两个运算对象之后,所有计算按运算符号出现的顺序,严格地由左而右新进行(不用考虑运算符的优先级)。

    如:3*(5–2)+7对应的后缀表达式为:3.5.2.-*7.+@。’@’为表达式的结束符号。‘.’为操作数的结束符号。

    输入输出格式

    输入格式:输入:后缀表达式 输出格式:输出:表达式的值

    输入输出样例

    输入样例#1:
    3.5.2.-*7.+@
    输出样例#1:
    16

    说明

    字符串长度,1000内。

    /*
    这几天在复习之前的一些很简单的东西。
    第一次做这道题是两年前吧,时间过得好快啊!╮(╯▽╰)╭ 
    */
    #include<cstdio>
    #include<cstring>
    #include<iostream>
    using namespace std;
    int stack[1100],top=0,x,i=0;
    char ss[3000];
    int main()
    {
        gets(ss);
        while(ss[i]!='@')
        {
            switch(ss[i])
            {
                case '+':{stack[--top]+=stack[top+1];break;}
                case '-':{stack[--top]-=stack[top+1];break;}
                case '*':{stack[--top]*=stack[top+1];break;}
                case '/':{stack[--top]/=stack[top+1];break;}
                default:
                {
                    x=0;
                    while(ss[i]!='.')x=x*10+ss[i++]-'0';
                    stack[++top]=x;
                    break;
                }
            }
            i++;
        }
        printf("%d
    ",stack[top]);
        return 0;
    }
  • 相关阅读:
    4. RDMA操作类型
    3. RDMA基本元素
    2. 比较基于Socket与RDMA的通信
    1. RDMA概述
    win10 如何开启hyper-v虚拟机
    将Oracle 当前日期加一天、一小时、一分钟
    github搜索案例(axios、pubsub、fetch)
    Tolist案例(父子传参实现增删改)
    5.key的使用
    4.React生命周期
  • 原文地址:https://www.cnblogs.com/EvilEC/p/6854827.html
Copyright © 2020-2023  润新知