ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#205680 | #1691. 逆波兰表达式 | wyz_ | 100 | 1ms | 1256kb | C++11 | 550b | 2024-07-19 17:41:18 | 2024-07-19 20:01:24 |
answer
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
string s;
stack<ll>stk;
int main(){
ios_base::sync_with_stdio(0),cin.tie(0),cout.tie(0);
while(cin >> s){
if(s.size() > 1 || isdigit(s[0]))
stk.push(stoi(s));
else{
ll b = stk.top();
stk.pop();
ll a = stk.top();
stk.pop();
switch(s[0]){
case '+':
stk.push(a + b);
break;
case '-':
stk.push(a - b);
break;
case '*':
stk.push(a * b);
break;
}
}
}
cout << stk.top();
return 0;
}
详细
小提示:点击横条可展开更详细的信息
Test #1:
score: 20
Accepted
time: 0ms
memory: 1252kb
input:
23 456 239 + + 123 874 908 345 * - + + 23 44 664 * - +
output:
-340738
result:
ok single line: '-340738'
Test #2:
score: 20
Accepted
time: 0ms
memory: 1256kb
input:
1 2 3 4 - * + 5 6 * -
output:
-31
result:
ok single line: '-31'
Test #3:
score: 20
Accepted
time: 0ms
memory: 1252kb
input:
1 2 + 3 4 5 - * -
output:
6
result:
ok single line: '6'
Test #4:
score: 20
Accepted
time: 0ms
memory: 1252kb
input:
1 2 + 5 4 + *
output:
27
result:
ok single line: '27'
Test #5:
score: 20
Accepted
time: 1ms
memory: 1252kb
input:
35 26 - 28 5 + * 6 7 * -
output:
255
result:
ok single line: '255'