Menu
CoddyTech

Find Pivot Index

MudahPrefix sumpython iconjava iconcpp iconc iconjs icon+10

Kamu mendapatkan sebuah array bilangan bulat nums. Indeks pivot adalah indeks yang jumlah nilainya di sebelah kiri sama dengan jumlah nilainya di sebelah kanan. Nilai pada pivot itu sendiri tidak termasuk di kedua sisi, dan sisi yang tidak memiliki nilai memiliki jumlah 0.

Kembalikan indeks pivot paling kiri, atau -1 jika tidak ada indeks yang merupakan pivot.

Fungsi

pivotIndex(nums: integer-array) → integer
numsinteger-array
array bilangan bulat yang akan diseimbangkan
Mengembalikaninteger
indeks pivot paling kiri, atau -1 jika tidak ada

Batasan

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

Contoh

Input
nums = [3, 1, 5, 2, 2]
Output
2
Penjelasan
Pada indeks 2, jumlah di kiri 3 + 1 = 4 seimbang dengan jumlah di kanan 2 + 2 = 4. Indeks 0 menghasilkan 0 berbanding 10 dan indeks 1 menghasilkan 3 berbanding 9, jadi 2 adalah pivot paling kiri.
challenge icon

Pertanyaan lanjutan

Bisakah kamu menemukan pivot paling kiri dengan membaca setiap nilai hanya sekali, tanpa menjumlahkan totalnya terlebih dahulu? Berapa banyak memori yang dibutuhkan?

Reset kode
def pivotIndex(nums):
    # Tulis kodemu di sini

Tes #1

Tes #2

Tes #3

Argumen

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

Output yang diharapkan

2