首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
四则运算
[编程题]四则运算
热度指数:130678
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32M,其他语言64M
算法知识视频讲解
输入一个表达式(用字符串表示),求这个表达式的值。
保证
字符串中的有效字符包括
[
‘0’-‘9’],‘+’,‘-’, ‘*’,‘/’ ,‘(’, ‘)’,‘[’, ‘]’,‘{’ ,‘}’。且表达式一定合法。
数据范围:表达式计算结果和过程中满足
,字符串长度满足
输入描述:
输入一个算术表达式
输出描述:
得到计算结果
示例1
输入
3+2*{1+2*[-4/(8-6)+7]}
输出
25
马上挑战
算法知识视频讲解
提交运行
算法知识视频讲解
添加笔记
求解答(134)
邀请回答
收藏(3532)
分享
提交结果有问题?
398个回答
354篇题解
开通博客
牛客543622112号
发表于 2021-10-04 22:01:17
s = input() s = s.replace("{", "(") s = s.replace("}", ")") s = s.replace("[", "(") s = s.replace("]", ")") print(int(eval(s)))
牛客398248201号
发表于 2021-10-04 20:12:29
import java.util.*; import javax.script.*; public class Main{ public static void main(String[] args) throws ScriptException { Scanner sca
展开全文
迪士尼在逃米老鼠
发表于 2020-02-16 23:53:06
问题:如何判断'+'或'-'是加减还是正负?解答:用一个变量来判断:数字和运算符是交替出现的(括号的出现不会影响这种交替关系)。 思路 用两个栈分别压数字和运算符; 如果当前运算符优先级('*/')高于栈顶运算符('+-')优先级,则将运算符入栈;反之,从数字栈中弹出两个数,从运算符栈中弹出栈顶运
展开全文
摸鱼学大师
发表于 2021-10-26 11:02:19
题目的主要信息: 输入一个表达式(用字符串表示),求这个表达式的值 字符串中有0-9的数字,加减乘除符号,大中小三种括号 表达式一定合法,不用判断括号是否合法之类的问题 除数用整数运算 方法一:递归 具体做法: 括号中的运算式可以看成运算式的子问题,因此可以用递归解决。 第一次运算是运算字符串的
展开全文
代码界的小白
发表于 2021-12-08 23:58:08
题目主要信息 1、给定一个表达式求值 2、字符串中的有效字符包括[‘0’-‘9’],‘+’,‘-’, ‘*’,‘/’ ,‘(’, ‘)’,‘[’, ‘]’,‘{’ ,‘}’ 3、字符串一定合法 4、可能出现多个数字连在一起组成多位数 5、可能出现负数 方法一:利用栈求解 具体方法 我们可以把加减乘除
展开全文
李寻欢大弟子
发表于 2020-11-17 16:25:20
大佬的递归解法,也可以称为消消乐解法,这是我见过最简洁的表达式求值代码。看到这种解法之后我都不想去看什么逆波兰了。。。首先声明,我只是个搬运工。 第一步,先考虑无括号的情况,先乘除后加减,这个用栈很容易解决,遇到数字先压栈,如果下一个是乘号或除号,先出栈,和下一个数进行乘除运算,再入栈,最后就能保证
展开全文
码工在南京
发表于 2022-02-07 11:45:39
import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); String s=sc.next
展开全文
牛客155969019号
发表于 2021-10-16 23:23:41
while True: try: s=input() s=s.replace('{', '(') s=s.replace("}",")") s=s.replace("[","(") s=s.replace("]"
展开全文
法拉利201903231900848
发表于 2019-08-18 14:54:47
while True: try: s=input() &nbs
展开全文
strawberryz
发表于 2021-04-25 20:18:53
题目描述 > 输入一个表达式(用字符串表示),求这个表达式的值。 保证字符串中的有效字符包括[‘0’-‘9’],‘+’,‘-’, ‘*’,‘/’ ,‘(’, ‘)’,‘[’, ‘]’,‘{’ ,‘}’。且表达式一定合法。 思路参考:https://leetcode-cn.com/problem
展开全文
问题信息
字符串
栈
基础数学
难度:
398条回答
3532收藏
47895浏览
热门推荐
通过挑战的用户
查看代码
7只山羊
2023-03-12 23:17:55
矫健的懒🐏?...
2023-02-14 15:12:51
牛客80946...
2022-11-16 14:17:46
牛客58741...
2022-09-16 17:30:30
牛客33579...
2022-09-16 17:01:45
相关试题
线段树编号问题
基础数学
评论
(2)
车站建造问题
基础数学
评论
(40)
牛牛的超市
动态规划
基础数学
评论
(5)
机群系统与传统的并行处理系统相比有...
编译和体系结构
评论
(1)
xgboost的优点
评论
(1)
四则运算
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题
import java.io.IOException; import java.io.InputStream; public class Main{ public static void main(String[] args) throws IOException { InputStream in = System.in; } }
#include
#include
using namespace std; int main() { }
3+2*{1+2*[-4/(8-6)+7]}
25