2017年2月15日 星期三

【Python】Codility in Python : Lesson 3 - Time Complexity【TapeEquilibrium】

Time Complexity 練習題的第三題題目是【TapeEquilibrium】
Minimize the value |(A[0] + ... + A[P-1]) - (A[P] + ... + A[N-1])|.

方法一:使用遞減後取最小值的簡易方式

def solution(A):
  total = sum(A)
  result = sys.maxsize
  for i in range(0, len(A)):
    total -= A[i] * 2
    result = min(result, math.fabs(total))
  return int(result)

完整練習題 source code 請參閱:github

沒有留言:

張貼留言