4 the result of investment
阿新 • • 發佈:2019-01-14
陣列funds,公司ABC初市值為a b c,每次對當前市值最低公司投資funds的數值,返回最後ABC
最基本的方式是每次都進行比較,找最小值然後加funds(i),但我的程式竟然跑不起來,而且我現在還找不到原因,放上來打自己臉:
class Solution: def getAns(self, funds, a, b, c): # Write your code here A = a B = b C = c for i in funds: if A<=B&A<=C: A+=i elif B<=C&B<A: B+=i elif C<A&C<B: C+=i return A,B,C
然後是腦子轉過來的修改後版本
class Solution: def getAns(self, funds, a, b, c): # Write your code here A = a B = b C = c for i in funds: if A<=B and A<=C: A = A + i elif B<=C and B<A: B = B + i elif C<A and C<B: C = C + i return A,B,C
哈哈哈哈我竟然在迴圈賦值
然後python沒有‘&’。。。
其實最開始實現是想用稍微不那麼低階的min函式,結果一直想對min函式的運算結果賦值…當然沒有結果了
不過也是因為有盲點,一是不知道對dict的操作可以通過key和value在items中進行分別比較,二是多引數的for迴圈還沒理解好,這裡是最簡單的多變數for迴圈
dic = {'A':1,'B':2,'C':3}
for i,j in dic.items():
#print(i)
print(j)
而且思維僵化,if value = min(),dict[key] += i就是正確的對min函式結果操作方式了