STL容器是必要的
2025-07-25 16:22:02
发布于:浙江
3阅读
0回复
0点赞
直接上题解好吧!
#include <bits/stdc++.h>
using namespace std;
int main() {
string s;
cin >> s;
if(s.size() == 1 && s[0] == '@') cout << 0;
stack<int> stk;
string n;
for(int i = 0;i < s.size();i++){
if(s[i] == '@') break;
if(s[i] == '.'){
int num = 0,w = 1;
reverse(n.begin(),n.end());
for(int i = 0;i < n.size();i++){
num += (n[i] - '0') * w;
w *= 10;
}
stk.push(num);
n = "";
} else if('0' <= s[i] && s[i] <= '9'){
n += s[i];
} else {
int num1 = stk.top();
stk.pop();
int num2 = stk.top();
stk.pop();
if(s[i] == '+'){
stk.push(num2 + num1);
} else if(s[i] == '-'){
stk.push(num2 - num1);
} else if(s[i] == '*'){
stk.push(num2 * num1);
} else if(s[i] == '/'){
stk.push(num2 / num1);
}
}
}
cout << stk.top();
return 0;
}
不懂私信我
这里空空如也
有帮助,赞一个