【华为OD机试真题 C++】火星文计算

前言:本专栏将持续更新华为OD机试题目,并进行详细的分析与解答,包含完整的代码实现,希望可以帮助到正在努力的你。关于OD机试流程、面经、面试指导等,如有任何疑问,欢迎联系我,wechat:steven_moda;email:[email protected];备注:CSDN。

题目描述

已知火星文使用的运算符尾#、$,其与地球人的等价公式如下:

x#y = 2x+3y+4

x$y = 3*x+y+2

  1. 其中x、y是无符号整数
  2. 地球人公式按C语言规则计算
  3. 火星人公式中,$的优先级高于#,相同的运算符,按从左到右的顺序计算 现有一段火星人的字符串报文,请你来翻译并计算结果。

输入描述

火星人字符串表达式(结尾不带回车换行)
输入的字符串说明:字符串为仅由无符号整数和操作符(#、$)组成的计算表达式。例如:123#45#6778。

  1. 用例保证字符串中,操作数与操作符之间没有任何分隔符。
  2. 用例保证操作数取值范围为32位无符号整数。
  3. 保证输入以及计算结果不会出现整型溢出。
  4. 保证输入的字符串为合法的求值报文,例如:123#45#6778
  5. 保证不会出现非法的求值报文,例如类似这样字符串:

#4$5 //缺少操作数
4$5#

你可能感兴趣的:(华为OD机试真题,C++版,华为OD机试真题,c++,算法,数据结构,面试)