Menu
CoddyTech

Find Pivot Index

Otrzymujesz tablicę liczb całkowitych nums. Indeks równowagi to indeks, dla którego suma wartości po jego lewej stronie jest równa sumie wartości po jego prawej stronie. Wartość na samym indeksie równowagi nie należy do żadnej ze stron, a suma strony, na której nie ma żadnych wartości, wynosi 0.

Zwróć najbardziej lewy indeks równowagi lub -1, jeśli żaden indeks nie jest indeksem równowagi.

Funkcja

pivotIndex(nums: integer-array) → integer
numsinteger-array
tablica liczb całkowitych do zrównoważenia
Zwracainteger
indeks skrajnie lewego elementu rozdzielającego lub -1, jeśli go nie ma

Ograniczenia

  • 1 ≤ nums.length ≤ 104
  • -1000 ≤ nums[i] ≤ 1000

Przykłady

Wejście
nums = [3, 1, 5, 2, 2]
Wyjście
2
Wyjaśnienie
Pod indeksem 2 lewa strona to 3 + 1 = 4, a prawa strona to 2 + 2 = 4. Indeks 0 i indeks 1 nie są zrównoważone (lewa strona 0 w porównaniu z 10, lewa strona 3 w porównaniu z 9), więc 2 to najbardziej lewy punkt równowagi.

lock icon+17 ukrytych testów przy wysłaniu

challenge icon

Pytanie dodatkowe

Czy potrafisz znaleźć skrajny lewy punkt podziału, odczytując każdą wartość tylko raz, bez wcześniejszego sumowania całości? Ile pamięci to kosztuje?

Zresetuj kod
def pivotIndex(nums):
    # Napisz kod tutaj
Przypadki testowe

Przypadek 1

Przypadek 2

Przypadek 3

Wejście

nums = [3, 1, 5, 2, 2]

Oczekiwane

2