解析表达式
给定的石刻算式 expr 仅由小写字母和数字字符 1、2、3、4 组成,且恰好包含一个运算符。
遍历字符串,找到第一个满足 c ∈ {'1','2','3','4'} 的字符,记其下标为 opPos。
则左侧字母序列为 L = expr[0:opPos],右侧字母序列为 R = expr[opPos+1:],运算符 op = expr[opPos]。
字母序列转换为整数
对于一段字母序列(如 L 或 R),将其中的每一个字母 ch 替换为对应的数值:
考古学家发掘出一块古老石碑,上面雕刻着一串神秘的算式。算式仅由小写字母 a 到 z 和数字字符 1、2、3、4 构成。
经过长期破译,学者们发现:字母 a~z 依次对应数值 0~25;数字字符 1、2、3、4 分别代表加、减、乘、整除(向下取整)四种运算。
每一个石刻算式恰包含一个数字字符(即运算符),其左右各有一段由小写字母组成的序列,每段序列长度至少为 1、至多为 4。计算时,先将左侧的字母序列从左到右依次转换为对应数值,并按顺序拼接成一个十进制整数;右侧字母序列用相同方式转换为另一个十进制整数。然后依据中间的运算符执行相应运算。
由于石碑所属的文明不记录负数,若运算是减法且结果为负数,则取其绝对值作为最终结果。若运算是除法且右侧整数为 0(即除数为零),则该算式被视为无效,约定返回 -1。
约束条件:
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册