問題描述:
今天上課,老師教了小易怎麼計算加法和乘法,乘法的優先順序大於加法,但是如果乙個運算加了括號,那麼它的優先順序是最高的。例如:輸入描述: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**:如果最大值在中間,那麼最大值與最小值相加,與中間值相乘。
為什麼是這樣呢?
比如ac與ab誰大,結果顯而易見。
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 ...