badcow @ 2022-12-31 15:26:42
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int k;
char a[110];
stack<int>s;
int main(){
scanf("%s",a);
int l=strlen(a),i=0;
while(l--){
if(a[i]>='0'&&a[i]<='9'){
k*=10;
k+=a[i]-'0';
}
if(a[i]=='+'){
int t1=s.top();
s.pop();
int t2=s.top();
s.pop();
s.push(t1+t2);
}
if(a[i]=='-'){
int t1=s.top();
s.pop();
int t2=s.top();
s.pop();
s.push(t1-t2);
}
if(a[i]=='*'){
int t1=s.top();
s.pop();
int t2=s.top();
s.pop();
s.push(t1*t2);
}
if(a[i]=='/'){
int t1=s.top();
s.pop();
int t2=s.top();
s.pop();
s.push(t1/t2);
}
if(a[i]=='.'){
s.push(k);
k=0;
}
i++;
}
int t=s.top();
printf("%d",t);
return 0;
}//
by MicroSun @ 2022-12-31 15:45:01
@badcow 没有考虑到负数的情况
by LittleMouse @ 2023-02-02 17:30:54
减法是t2-t1,除法是t2/t1。