1923: 表达式求值:
假设表达式定义为:
- 一个十进制的正整数 X 是一个表达式。
- 如果 X 和 Y 是 表达式,则 X+Y, X*Y 也是表达式; *优先级高于+.
- 如果 X 和 Y 是 表达式,则 函数 Smax(X,Y)也是表达式,其值为:先分别求出 X ,Y
值的各位数字之和,再从中选最大数。
4.如果 X 是 表达式,则 (X)也是表达式。
例如:
表达式 12*(2+3)+Smax(333,220+280) 的值为 69。
请你编程,对给定的表达式,输出其值。
输入 :
第一行: T 表示要计算的表达式个数 (
1
≤
T
≤
10
1 \le T \le 10
1≤T≤10)
接下来有 T 行, 每行是一个字符串,表示待求的表达式,长度<=1000
输出 :
对于每个表达式,输出一行,表示对应表达式的值。
python代码:
t=int(input())
# 返回数字和最小值
def Smax(x,y):
return max( sum(list(map(int,list(str(x))))),sum(list(map(int,list(str(y))))))
for i in range(t):
print(eval(input()))
人生苦短,我用python。