Menu
CoddyTech

Find Pivot Index

ניתן לך מערך של מספרים שלמים nums. אינדקס ציר הוא אינדקס שבו סכום הערכים שמשמאלו שווה לסכום הערכים שמימינו. הערך שבאינדקס הציר עצמו אינו שייך לאף אחד מהצדדים, והסכום של צד שאין בו ערכים הוא 0.

החזר את אינדקס הציר השמאלי ביותר, או -1 אם אין אינדקס שהוא אינדקס ציר.

פונקציה

pivotIndex(nums: integer-array) → integer
numsinteger-array
מערך המספרים השלמים לאיזון
מחזירהinteger
אינדקס הציר השמאלי ביותר, או ‎-1 אם אין כזה

אילוצים

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

דוגמאות

קלט
nums = [3, 1, 5, 2, 2]
פלט
2
הסבר
באינדקס 2 הצד השמאלי הוא 3 + 1 = 4 והצד הימני הוא 2 + 2 = 4. אינדקס 0 ואינדקס 1 אינם מאוזנים (0 בצד שמאל לעומת 10, 3 בצד שמאל לעומת 9), ולכן 2 הוא נקודת הציר השמאלית ביותר.

lock icon+17 בדיקות נסתרות בשליחה

challenge icon

שאלת המשך

האם אפשר למצוא את הציר השמאלי ביותר על ידי קריאת כל ערך פעם אחת בלבד, בלי לחשב קודם את הסכום הכולל? כמה זיכרון זה דורש?

איפוס הקוד
def pivotIndex(nums):
    # כתבו כאן קוד
מקרי בדיקה

מקרה 1

מקרה 2

מקרה 3

קלט

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

צפוי

2