华为OD机试 - 最长合法表达式(Python)| 真题+思路+代码
Posted 梦想橡皮擦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了华为OD机试 - 最长合法表达式(Python)| 真题+思路+代码相关的知识,希望对你有一定的参考价值。
最长合法表达式
题目
提取字符串中的最长合法简单数学表达式,
字符串长度最长的,并计算表达式的值。
如果没有返回 0
.
简单数学表达式只能包含以下内容:
0-9
数字,符号 +-*
说明:
- 所有数字,计算结果都不超过
long
- 如果有多个长度一样的,请返回第一个表达式的结果
- 数学表达式,必须是最长的,合法的
- 操作符不能连续出现,如
+--+1
是不合法的
输入
字符串
输出描述
表达式值
示例一
输入
1-2abcd
输出
-1
解题思路
这道题就是一个计算机,需要提取数字和运算符号。
优先从用户输入中获取数字,然后将数字和运算符进行提取,将最后的结果进行返回。
函数 calc()
接收一个字符串作为输入,先将字符串转换为字符数组,然后遍历字符数组,如果当前字符是数字,就存入数字数组中
以上是关于华为OD机试 - 最长合法表达式(Python)| 真题+思路+代码的主要内容,如果未能解决你的问题,请参考以下文章
华为OD机试真题 python 实现组合出合法最小数2023 Q1 | 100分