2020-07-01 后缀表达式

2020-07-01  本文已影响0人  JalorOo

https://www.luogu.com.cn/problem/P1449#submit

//采用一种用数组模拟栈的方法
#include<iostream>
#include<cstdio>
using namespace std;
long long stk[1000];
int main(){
    long long i=0,now=0;
    char op;
    while((op=getchar())!='@'){
        if(op>='0'&&op<='9') {//快读
            now*=10;
            now+=op-'0';
        }else if(op=='.'){//压栈
            stk[++i]=now;
            now=0;
        }else if(op=='+'){
            stk[i-1]=stk[i-1]+stk[i];
            stk[i]=0;
            i--;
        }else if(op=='-'){
            stk[i-1]=stk[i-1]-stk[i];
            stk[i]=0;
            i--;
        }else if(op=='*'){
            stk[i-1]=stk[i-1]*stk[i];
            stk[i]=0;
            i--;
        }else if(op=='/'){
            stk[i-1]=stk[i-1]/stk[i];
            stk[i]=0;
            i--;
        }
    }
    cout<<stk[1];
    return 0;
}
上一篇 下一篇

猜你喜欢

热点阅读