Find equilibrium index of an array
def equilibriumIndex(A):
# `total` stores the sum of all elements in the list
total = sum(A)
# `right` stores the sum of elements of sublist `A[i+1…n)`
right = 0
# maintain a list of indices
indices = []
# traverse the list from right to left
for i in reversed(range(len(A))):
''' `i` is an equilibrium index if the sum of elements of sublist
`A[0…i-1]` is equal to the sum of elements of the sublist
A[i+1…n), i.e., (A[0] + A[1] + … + A[i-1]) =
(A[i+1] + A[i+2] + … + A[n-1]) '''
# sum of elements of the left sublist `A[0…i-1]` is
# (total - (A[i] + right))
if right == total - (A[i] + right):
indices.append(i)
# new right is `A[i] + (A[i+1] + A[i+2] + … + A[n-1])`
right += A[i]
print("Equilibrium Index found at", indices)
Are there any code examples left?
New code examples in category Other
-
Other 2023-03-27 22:50:10 how to select the whole line in vscode with keyboard shortcut
-
Other 2022-03-27 22:45:24 income of a web developer
-
Other 2022-03-27 22:35:01 \pyrcc_main.py: File does not exist 'resources.qrc'
-
Other 2022-03-27 22:30:45 rick roll embed code
-
Other 2022-03-27 22:20:08 Circuit_04_Potentiometer
-
Other 2022-03-27 22:20:05 iterative power
-
Other 2022-03-27 22:15:11 flutter run all
-
Other 2022-03-27 22:10:05 when is karlson release
-
Other 2022-03-27 22:10:02 wp .htaccess example
-
Other 2022-03-27 22:00:08 bash pause in file read line by line