UOJ Logo

NOI.AC

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#205793#1691. 逆波兰表达式Xieyunlong1001ms1244kbC++11578b2024-07-19 19:12:322024-07-19 20:19:21

answer

#include<bits/stdc++.h>
using namespace std;
int main(){
    stack<int> s;
    string token;
    while (cin>>token){
        if (isdigit(token[0])){
            s.push(stoi(token));
        }else{
            int b=s.top();
            s.pop();
            int a=s.top();
            s.pop();
            if(token =="+") {
                s.push(a+b);
            }else if(token=="-") {
                s.push(a - b);
            }else if(token=="*") {
                s.push(a*b);
            }
        }
    }
    cout<<s.top()<<endl;
    return 0;
}

详细

小提示:点击横条可展开更详细的信息

Test #1:

score: 20
Accepted
time: 0ms
memory: 1244kb

input:

23 456 239 + + 123 874 908 345 * - + + 23 44 664 * - +

output:

-340738

result:

ok single line: '-340738'

Test #2:

score: 20
Accepted
time: 1ms
memory: 1244kb

input:

1 2 3 4 - * + 5 6 * -

output:

-31

result:

ok single line: '-31'

Test #3:

score: 20
Accepted
time: 0ms
memory: 1244kb

input:

1 2 + 3 4 5 - * -

output:

6

result:

ok single line: '6'

Test #4:

score: 20
Accepted
time: 0ms
memory: 1240kb

input:

1 2 + 5 4 + *

output:

27

result:

ok single line: '27'

Test #5:

score: 20
Accepted
time: 0ms
memory: 1244kb

input:

35 26 - 28 5 + * 6 7 * -

output:

255

result:

ok single line: '255'