求助 为什么只得17分
  • 板块灌水区
  • 楼主cyt123bc
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/3/9 08:55
  • 上次更新2024/3/9 11:21:41
查看原帖
求助 为什么只得17分
999548
cyt123bc楼主2024/3/9 08:55
#include <bits/stdc++.h>
using namespace std;
string s;
int main(){
	cin>>s;
	int tmp=0,tmp2=0;
	stack<int> sk;
	int a,b;
	for(int i=0;i<int(s.size());i++){
		if(s[i]=='@'){
			break;
		}
		else if(s[i]=='.'){
			sk.push(tmp);
			tmp=0,tmp2=0;
		}else if(s[i]>='0' && s[i]<='9'){
			tmp=tmp2*10+s[i]-'0';
			tmp2=tmp;
		}else{
			if(s[i]=='+'){
				a=sk.top();
				sk.pop();
				b=sk.top();
				sk.pop();
				sk.push(a+b);
			}
			if(s[i]=='-'){
				a=sk.top();
				sk.pop();
				b=sk.top();
				sk.pop();
				sk.push(a-b);
			}
			if(s[i]=='*'){
				a=sk.top();
				sk.pop();
				b=sk.top();
				sk.pop();
				sk.push(a*b);
			}
			if(s[i]=='/'){
				a=sk.top();
				sk.pop();
				b=sk.top();
				sk.pop();
				sk.push(a/b);
			}
		}
	}
	cout<<sk.top();
	return 0;
}
2024/3/9 08:55
加载中...