סדרה חשבונית היא סדרה של מספרים, שבה ההפרש בין כל שני איברים עוקבים הוא קבוע. לדוגמה, בסדרה ..., 3, 5, 7, 9, 11, ההפרש בין כל שני איברים עוקבים הוא קבוע - 2.
נתון מערך חד-ממדי arr המלא במספרים שלמים המהווים סדרה חשבונית. במערך נפלה טעות, ואחד המספרים חסר. יש להחזיר מהו האיבר החסר.
לדוגמה, במערך הבא:
| 0 | 1 | 2 | 3 | 4 | 5 |
| 7 | 10 | 13 | 16 | 22 | 25 |
חסר המספר 19. לכן יוחזר הערך 19.
השיטה צריכה להיות יעילה ככל הניתן, גם מבחינת סיבוכיות הזמן וגם מבחינת סיבוכיות המקום.
המערך arr מכיל סדרה חשבונית ובדיוק מספר אחד חסר בסדרה.
arr = [7, 10, 13, 16, 22, 25]
19
הסבר: ההפרש הקבוע הוא 3, ולכן המספר החסר הוא 19.
arr = [2, 4, 8, 10]
6
הסבר: ההפרש הקבוע הוא 2, ולכן המספר החסר הוא 6.
arr = [5, 15, 25, 35, 45, 65]
55
הסבר: ההפרש הקבוע הוא 10, ולכן המספר החסר הוא 55.
arr = [1, 3, 7, 9]
5
הסבר: ההפרש הקבוע הוא 2, ולכן המספר החסר הוא 5.
arr = [10, 20, 40, 50]
30
הסבר: ההפרש הקבוע הוא 10, ולכן המספר החסר הוא 30.
arr = [100, 200, 400, 500]
300
הסבר: ההפרש הקבוע הוא 100, ולכן המספר החסר הוא 300.
arr = [3, 6, 12, 15]
9
הסבר: ההפרש הקבוע הוא 3, ולכן המספר החסר הוא 9.
arr = [50, 60, 80, 90]
70
הסבר: ההפרש הקבוע הוא 10, ולכן המספר החסר הוא 70.
קלט:
arr = [7, 10, 13, 16, 22, 25]
הפלט המבוקש:
19