题目描述

给定一个只包含加法和乘法的算术表达式,请你编程计算表达式的值。


输入格式

一行,为需要你计算的表达式,表达式中只包含数字、加法运算符 “+” 和乘法运算符 “×”,且没有括号,所有参与运算的数字均为 0 到 2^31-1之间的整数。

输入数据保证这一行只有 0-9、+、× 这12种字符。


输出格式

一个整数,表示这个表达式的值。

注意:当答案长度多于 4 位时,请只输出最后 4 位,前导 0 不输出。


输入输出样例

输入 #1  1+1*3+4

输出 #1  8

输入 #2  1+1234567890*1

输出 #2  7891

输入 #3  1+1000000003*1

输出 #3  4


话不多说上代码:

#include<iostream>
#include<stack>
using namespace std;
stack <int> x;
int a,c;
char b;
int main(){cin>>a;a=a%10000;x.push(a);while(cin>>b>>c){if(b=='*'){   a=x.top();x.pop();x.push(a*c%10000); }else x.push(c);}a=0;while(x.size()){a+=x.top();a%=10000;x.pop();}cout<<a<<endl;return 0;
} 

这道题用的是栈的思路,数字入栈,看符号运算。


说明/提示

对于 30% 的数据,0≤ 表达式中加法运算符和乘法运算符的总数 ≤100。

对于 80% 的数据,0≤ 表达式中加法运算符和乘法运算符的总数 ≤1000。

对于 100% 的数据,0≤ 表达式中加法运算符和乘法运算符的总数 ≤100000。

P1981 [NOIP2013 普及组] 表达式求值相关推荐

  1. 信息学奥赛一本通 1962:【13NOIP普及组】表达式求值 | 洛谷 P1981 [NOIP2013 普及组] 表达式求值

    [题目链接] ybt 1962:[13NOIP普及组]表达式求值 洛谷 P1981 [NOIP2013 普及组] 表达式求值 [题目考点] 栈 中缀表达式转后缀表达式,后缀表达式求值 中缀表达式求值 ...

  2. 信息学奥赛一本通 1956:【11NOIP普及组】表达式的值 | 洛谷 P1310 [NOIP2011 普及组] 表达式的值

    [题目链接] ybt 1956:[11NOIP普及组]表达式的值 洛谷 P1310 [NOIP2011 普及组] 表达式的值 [题目考点] 表达式树 由带括号的中缀表达式构建表达式树 [解题思路] 思 ...

  3. NOIP2013普及组 T2 表达式求值

    OJ地址:洛谷P1981 CODEVS 3292 正常写法是用栈 1 #include<iostream> 2 #include<algorithm> 3 #include&l ...

  4. NOIP2013普及组 题解

    T1  计数问题 题目描述 试计算在区间 1 到 n 的所有整数中,数字 x(0 ≤ x ≤ 9)共出现了多少次?例如,在 1 到 11 中,即在 1.2.3.4.5.6.7.8.9.10.11 中, ...

  5. java 车站分级问题_【NOIP2013 普及组】车站分级

    [NOIP2013 普及组]车站分级 一.题目 [NOIP2013 普及组]车站分级 时间限制: 1 Sec  内存限制: 128 MB 提交: 3  解决: 0 [提交][状态][讨论版] 题目描述 ...

  6. 计算器软件----表达式求值

    学完栈写了一个计算器小程序, 基本功能如下: 1.支持基本的+ - * / % 运算 2.支持sin.cos.tan.ln.log.乘方(^).开方(sqrt).指数(exp) 求值 3.支持括号及括 ...

  7. C/C++ 语言中的表达式求值

    转载地址:http://www.cnblogs.com/heyonggang/p/3340301.html 在此,首先向裘老师致敬! 裘宗燕:C/C++ 语言中的表达式求值 经常可以在一些讨论组里看到 ...

  8. NYOJ 35 表达式求值

    表达式求值 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述 ACM队的mdd想做一个计算器,但是,他要做的不仅仅是一计算一个A+B的计算器,他想实现随便输入一个表达式都能 ...

  9. 【数据结构】用栈解决表达式求值问题

    题目:求4+4/2-9*3的值: 思路: ①:用一个字符型数组存放了表达式<4+4/2-9*3>: 1 char val[9] = {'4','+','4','/','2','-','9' ...

最新文章

  1. Android优化五:布局优化
  2. 朱俊彦团队最新论文:用GAN监督学习给左晃右晃的猫狗加表情,很丝滑很贴合...
  3. 76.数据库操纵语言DML 定义语言 DDL 控制语言DCL
  4. 我用python是什么梗_Python中的一些梗
  5. softmax with cross-entropy loss求导(转载+细节整理)
  6. windows下实现微秒级的延时
  7. python装饰器带参数函数二阶导数公式_一文搞定Python装饰器,看完面试不再慌
  8. 白话说编程之java线程
  9. Android中的事件分发和处理
  10. 爱奇艺推出国际娱乐服务iQIYI App:科技和内容同时出海 携手Astro展开马来西亚地区本土化运营...
  11. mysql自增 java_如何在java中自动增加mysql中的用户id
  12. MySQL常用命令用法总结
  13. python缓存技术_高级Python技术:如何在Python应用程序中实现缓存
  14. spring Access denied for user ‘xx‘@‘localhost‘ (using password: YES)
  15. linux 查看http连接等
  16. Qt Chart柱状图实现
  17. Windows 搭建网络代理服务器
  18. Dropout与Inverted Dropout细节,在训练与测试阶段的使用
  19. python学习之人民币兑美元之间的转换
  20. 关于FFmpeg对手机里拍摄的视频进行转码时角度问题的处理

热门文章

  1. SQL-在查询结果后加入多行新数据或其他查询结果
  2. 使用Jackson实现json格式字符串与obj之间的转换
  3. 寒假作业1:打印沙漏
  4. 干饭篇-西红柿炒鸡蛋+银耳红枣粥
  5. Azure Kinect 使用记录 (一)
  6. 国际合作越来越多,如何国际化短视频源码(ios篇)
  7. windows中java环境变量配置
  8. MyBatis-Plus分页查询(快速上手运用)
  9. 使用Nginx防止IP地址被恶意解析
  10. [网络转载]IE选项注册表控制大全