洛谷 1449——后缀表达式(线性数据结构)
题目描述
所谓后缀表达式是指这样的一个表达式:式中不再引用括号,运算符号放在两个运算对象之后,所有计算按运算符号出现的顺序,严格地由左而右新进行(不用考虑运算符的优先级)。
如:3*(5–2)+7对应的后缀表达式为:3.5.2.-*7.+@。’@’为表达式的结束符号。‘.’为操作数的结束符号。
输入输出格式
输入格式:
输入:后缀表达式
输出格式:
输出:表达式的值
输入输出样例
输入样例#1:
3.5.2.-*7.+@
输出样例#1:
16
说明
字符串长度,1000内。
很简单
‘.’为读入
‘+’将前面a[ans]+a[ans-1]
‘-‘a[ans-1]-a[ans]
‘*’a[ans]*a[ans-1]
‘/’a[ans-1] div a[ans]
代码如下:
var x,ans:longint;c:char;a:array[1..600]of longint;
beginx:=0;repeatread(c);case c of'0'..'9':x:=x*10+ord(c)-48;'+':begindec(ans);a[ans]:=a[ans]+a[ans+1];end;'-':begindec(ans);a[ans]:=a[ans]-a[ans+1];end;'*':begindec(ans);a[ans]:=a[ans]*a[ans+1];end;'/':begindec(ans);a[ans]:=a[ans] div a[ans+1];end;'.':begininc(ans);a[ans]:=x;x:=0;end;end;until c='@';writeln(a[1]);
end.
转载于:https://www.cnblogs.com/Comfortable/p/8412424.html
洛谷 1449——后缀表达式(线性数据结构)相关推荐
- 信息学奥赛一本通 2006:【20CSPJ普及组】表达式 | 洛谷 P7073 [CSP-J2020] 表达式
[题目链接] ybt 2006:[20CSPJ普及组]表达式 洛谷 P7073 [CSP-J2020] 表达式 [题目考点] 后缀表达式 表达式树 通过后缀表达式建立表达式树: 遍历后缀表达式字符串: ...
- 洛谷 P1054 等价表达式
洛谷 P1054 等价表达式 题目描述 明明进了中学之后,学到了代数表达式.有一天,他碰到一个很麻烦的选择题.这个题目的题干中首先给出了一个代数表达式,然后列出了若干选项,每个选项也是一个代数表达式, ...
- java求值不用后缀表达式_数据结构之后缀表达式求值(java实现)
数据结构之后缀表达式求值(java实现) 前记 今天在刷leet code的时候刷到了一道题,后缀表达式(逆波兰表达式)求值,我花了一会儿写了一下它的解法.但是今天我不谈什么是后缀表达式,有兴趣的 ...
- java中缀表达式转后缀表达式_数据结构Java实现06----中缀表达式转换为后缀表达式...
本文主要内容: 表达式的三种形式 中缀表达式与后缀表达式转换算法 一.表达式的三种形式: 中缀表达式:运算符放在两个运算对象中间,如:(2+1)*3.我们从小做数学题时,一直使用的就是中缀表达式. 后 ...
- 洛谷P3809 后缀数组模板
题目:https://www.luogu.org/problemnew/show/P3809 刚学了后缀数组,看人家手写演示了半天,大概明白了过程,但完全写不出来代码: 于是借鉴了许多,不过都差不多, ...
- 洛谷P3809 后缀排序【后缀数组】【模板】
题目背景 这是一道模板题. 题目描述 读入一个长度为 nn 的由大小写英文字母或数字组成的字符串,请把这个字符串的所有非空后缀按字典序从小到大排序,然后按顺序输出后缀的第一个字符在原串中的位置.位置编 ...
- 洛谷P2401 不等数列(线性DP)
本题使用的是线性DP.就是DP数组难以思考,这里我直接给出 dp[i][j]:表示 1 ~ i 这 i 个数 , 其中j 个 " < " 有几种方法 假设我们已经把 n - ...
- 2018.08.16 洛谷P2029 跳舞(线性dp)
传送门 简单的线性dpdp. 直接推一推就行了. 貌似三个状态会卡空间啊... 笔者分了两个阶段考虑状态转移. 代码: #include<bits/stdc++.h> #define N ...
- 线性数据结构和非线性数据结构(java版)
文章目录 线性数据结构和非线性数据结构 数据结构 非线性结构 稀疏Sparsearray 数组 队列 数组模拟队列 数组模拟环形队列 链表 单链表 双向链表 约瑟夫问题 栈 数组模拟栈 使用栈完成表达 ...
- 备战NOI 数据结构——栈与单调栈(stack) 以及后缀表达式
栈 stack 引入 栈的概念 代码实现 定义和初始化(init) 入栈(push) 出栈(pop) 访问栈顶元素(query) 查询栈的元素个数(size) 判断是否为空(empty) 清空栈(cl ...
最新文章
- 如果要存 IP 地址,用什么数据类型比较好?大部人都会答错!
- docker 安装 solr搜索引擎
- ListView中的图片异步加载、缓存
- java 树状数组模板源码
- C#调用Power Shell 管理Office365 执行脚本时遇到的问题
- IPSEC ×××需要解决的路由问题及影响IPSEC ×××的网络问题
- Redis和MongoDB的区别
- Qt4_子类化QTableWidget
- linux 7 打开22端口号,Centos 7 修改 SSH 默认端口号
- 【Linux】Linux修改openfiles后不生效问题?
- k近邻matlab,模式识别 最近邻法和k近邻法MATLAB实现.doc
- 简历求职01:STAR法则
- 1076 Wifi密码
- rstudio中logit模型代码
- Protobuf是什么
- 清华女学霸:努力奋斗饮水思源 这才是当代青年的榜样
- 从零开始快速搭建SpringBoot+Mybatis+小程序应用--微信小程序的入门和前后端的联调
- .gitignore设置
- 体检什么情况不能顺利入职
- Telerik 2021 R2 SP1 Retail Full Version