帮帮我神君大人(?
查看原帖
帮帮我神君大人(?
1057197
nobody_here楼主2024/8/17 23:17

帮帮我dalao先生

#include<bits/stdc++.h>
using namespace std;
char a[10010],c[10010],num[1001];
stack<int> b;
int main(){
	cin>>a;
	int al=strlen(a),numm=-1,ff=0,cnt=0,cl=0;
	for(int i=0;i<al;i++){
		if(a[i]>='0'&&a[i]<='9'){
			numm++;
			num[numm]=a[i];
		}else{
			ff=0;
			ff+=(num[numm]-48);
			for(int j=numm-1;j>=0;j--){
				ff+=((num[j]-48)*(numm-j)*10);
			}
			b.push(ff);
			numm=-1;
			if(a[i]=='*'){
				ff=b.top();
				b.pop();
				ff*=b.top();
				cnt+=ff;
			}else if(a[i]=='/'){
				ff=b.top();
				b.pop();
				ff/=b.top();
				cnt+=ff;
			}else{
				c[cl]=a[i];
				cl++;	
			}
		}
	}
	for(int i=0;i<=cl;i++){
		if(c[cl]=='+'){
			cnt+=b.top();
			b.pop();
		}else{
			cnt-=b.top();
			b.pop();
		}
	}
	cout<<cnt;
	return 0;
}

2024/8/17 23:17
加载中...