006網易 表示式求值

2021-09-27 11:59:25 字數 1125 閱讀 2550

問題描述:

今天上課,老師教了小易怎麼計算加法和乘法,乘法的優先順序大於加法,但是如果乙個運算加了括號,那麼它的優先順序是最高的。例如:

1+23=7

1(2+3)=5

123=6

(1+2)3=9

現在小易希望你幫他計算給定3個數a,b,c,在它們中間新增"+", "", 「(」, ")"符號,能夠獲得的最大值。

輸入描述:

一行三個數a,b,c (1 <= a, b, c <= 10)

輸出描述:

能夠獲得的最大值

示例輸入:

1

23

示例輸出:

9
思路:

3個數,最大值肯定從以下形式中產生: 3數相乘 如果最大值在一頭,則兩個較小值相加與最大值相乘。

如果最大值在中間,那麼最大值與最小值相加,與中間值相乘。

為什麼是這樣呢?

比如ac與ab誰大,結果顯而易見。

ac**:

def

solution()

: a,b,c =

map(

lambda x:

int(x)

,input()

.split())

res = a*b*c

if a >= b and a >= c:

cur_res = a*

(b+c)

elif c > a and c > b:

cur_res = c*

(a+b)

elif a > c:

cur_res = a*

(b+c)

else

: cur_res = c*

(a+b)

if res < cur_res:

res = cur_res

print

(res)

solution(

)

表示式求值(2019網易程式設計題)

今天上課,老師教了小易怎麼計算加法和乘法,乘法的優先順序大於加法,但是如果乙個運算加了括號,那麼它的優先順序是最高的。例如 1 2 3 4 1 2 3 7 1 2 3 5 1 2 3 6 1 2 3 9 現在小易希望你幫他計算給定3個數a,b,c,在它們中間新增 符號,能夠獲得的最大值。輸入描述 一...

網易測評題 表示式求值

今天上課,老師教了小易怎麼計算加法和乘法,乘法的優先順序大於加法,但是如果乙個運算加了括號,那麼它的優先順序是最高的。例如 12 341 23 7 1 2 3 5 123 6 1 2 3 9 現在小易希望你幫他計算給定3個數a,b,c,在它們中間新增 符號,能夠獲得的最大值。輸入描述 一行三個數a,...

C語言 簡易表示式求值(棧的初步應用)

表示式求值是棧應用的乙個典型的應用例項。在計算機中,任何乙個表示式都是由運算子和運算元構成的。今天我討論的是運算子僅含有 的情況。圖源 表示式求值 include struct sqstack char opset 10 用來進行比較運算子優先順序的矩陣,3代表 2代表 1代表 int cmp 7 ...