Luogu P1981
Luogu P1981
/*
(1) 填充栈:1.如果输入的运算为乘号,在栈里压入(上一个数*当前的数),将运算顺序消掉; 2.否则,直接把当前的数压入。
(2) 累加由于先乘再加的运算顺序已被消掉,将栈内元素累加即可。
*/
#include
using namespace std;
const int mod=10000,N=1e6+5;
int a,b;
char c;
string s;
int stk[N],tp;
int main()
{cin>>a;a%=mod;stk[++tp]=a;while(cin>>c>>b&&c!='\n'){if(c=='*'){a=stk[tp];tp--;stk[++tp]=(a*b%mod);}else stk[++tp]=b%mod;}int sum=0;for(int i=1;i<=tp;i++){sum+=stk[i];sum%=mod;}cout<<sum;return 0;
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
