今天上課,老師教了小易怎麼計算加法和乘法,乘法的優先順序大於加法,但是如果乙個運算加了括號,那麼它的優先順序是最高的。例如: 1 2 3 41+2*3=7 1*(2+3)=5 1*2*3=6 (1+2)*3=9 現在小易希望你幫他計算給定3個數a,b,c,在它們中間新增」+」,
「*」, 「(「, 「)」符號,能夠獲得的最大值。
輸入描述:
一行三個數a,b,c (1
<= a, b, c <= 10)
輸出描述:
能夠獲得的最大值
輸入例子1:12
3輸出例子1:
9
分析:
題目要求最大值,首先想到的是動態規劃。
a = map(int, raw_input().split())
defsolve
(l, r):
if l == r:
return a[l]
ans = 0
for i in range(l, r):
lans = solve(l, i)
rans = solve(i+1, r)
ans = max(ans, lans+rans)
ans = man(ans, lans*rans)
return ans
print(solve(0,2))
還有一種暴力解法,因為只有3個數字,所以可以列舉出所有的可能情況,然後求最大。
a = map(int, raw_input().split())
defsolve
(i, j, k):
ans1 = (i+j)+k
ans2 = (i*j)+k
ans3 = (i*j)*k
ans4 = i+(j*k)
print(max(ans1,ans2,ans3,ans4)
solve(a[0], a[1], a[2])
網易測評題 表示式求值
今天上課,老師教了小易怎麼計算加法和乘法,乘法的優先順序大於加法,但是如果乙個運算加了括號,那麼它的優先順序是最高的。例如 12 341 23 7 1 2 3 5 123 6 1 2 3 9 現在小易希望你幫他計算給定3個數a,b,c,在它們中間新增 符號,能夠獲得的最大值。輸入描述 一行三個數a,...
2019網易實習程式設計題筆試
牛牛總是睡過頭,所以他定了很多鬧鐘,只有在鬧鐘響的時候他才會醒過來並且決定起不起床。從他起床算起他需要x分鐘到達教室,上課時間為當天的a時b分,請問他最晚可以什麼時間起床 輸入描述 每個輸入包含乙個測試用例。每個測試用例的第一行包含乙個正整數,表示鬧鐘的數量n n 100 接下來的n行每行包含兩個整...
006網易 表示式求值
問題描述 今天上課,老師教了小易怎麼計算加法和乘法,乘法的優先順序大於加法,但是如果乙個運算加了括號,那麼它的優先順序是最高的。例如 1 23 7 1 2 3 5 123 6 1 2 3 9 現在小易希望你幫他計算給定3個數a,b,c,在它們中間新增 符號,能夠獲得的最大值。輸入描述 一行三個數a,...