Advertisement
Guest User

Untitled

a guest
Mar 18th, 2019
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.81 KB | None | 0 0
  1. def calculateSum(arr, start, end):
  2. su = 0
  3. for i in range(start, end):
  4. print(arr[i], end=' ')
  5. su += arr[i]
  6. print()
  7. return su
  8.  
  9. def fn(arr):
  10. start = 0
  11. end = 1
  12. maxSum = -float('inf')
  13. currentLevel = 0
  14. maxLevel = 0
  15. while(2*end <= len(arr)):
  16. currentSum = calculateSum(arr, start, end)
  17. if(currentSum > maxSum):
  18. currentSum = maxSum
  19. maxLevel = currentLevel
  20.  
  21.  
  22. currentLevel += 1
  23. start = end
  24. end = 2 * start - 1
  25.  
  26. if(end <= len(arr)):
  27. currentSum = calculateSum(arr, start, end)
  28. if(currentSum > maxSum):
  29. currentSum = maxSum
  30. maxLevel = currentLevel
  31.  
  32. return maxLevel + 1
  33.  
  34. print(fn([-1, 7, 0, 7, -8, 100, -300]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement