TapeEquilibrium測試
好吧,我一開始都是拿的41分,由於沒有徹底理解題意,邊界條件很重要。ui
肯定邊界條件之後就一遍過了。另外本身應該好好準備一些邊界測試用例。spa
1 def solution(A): 2 left, right, total = A[0], 0, sum(A) 3 res = abs(total - left * 2) 4 for i in range(1, len(A) - 1): # N > P > 0 5 left += A[i] 6 right = total - left 7 if abs(left - right) < res: 8 res = abs(left - right) 9 if res == 0: 10 break 11 return res
PermMissingElem
code
1 def solution(A): 2 n = len(A) 3 expect = (1 + n + 1) * (n + 1) / 2 4 total = sum(A) 5 return expect - total
FrogJmpblog
這一題我也拿了44分先,由於O(n)的遍歷作加法,可是基礎知識是數學,能夠用除法解決的問題。數學
想起我以前Google電面有過一道題,power的實現,能夠循環調用。io
因此數學也很重要。邊界繼續重要,有沒有餘數決定結果是否須要加一class
1 def solution(X, Y, D): 2 if X >= Y: 3 return 0 4 if (Y - X) % D == 0: # equal 5 return (Y - X) / D 6 return (Y - X) / D + 1