מציאת המספר שמופיע פעם אחת

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

לדוגמה, המערכים הבאים מקיימים את התנאי:

 012345678
a=661818-4-41299
 0123456789101112
b=88-7-733001010554
 0
c=5

בהינתן מערך שמקיים את התנאי הנ"ל, יש להחזיר את המספר שמופיע במערך רק פעם אחת.

לדוגמה, במערכים לעיל:

  • המספר הבודד במערך a הוא 12 שנמצא באינדקס 6
  • המספר הבודד במערך b הוא 4 שנמצא באינדקס 12
  • המספר הבודד במערך c הוא 5 שנמצא באינדקס 0

השיטה צריכה להיות יעילה ככל הניתן, גם מבחינת סיבוכיות הזמן וגם מבחינת סיבוכיות המקום.

אילוצים:

המערך אינו ריק והוא מקיים את התנאי.

דוגמה 1:
קלט:
a = [6, 6, 18, 18, -4, -4, 12, 9, 9]
פלט:
12

הסבר: המספר 12 מופיע במערך פעם אחת בלבד, באינדקס 6

דוגמה 2:
קלט:
a = [8, 8, -7, -7, 3, 3, 0, 0, 10, 10, 5, 5, 4]
פלט:
4

הסבר: המספר 4 מופיע במערך פעם אחת בלבד, באינדקס 12

דוגמה 3:
קלט:
a = [5]
פלט:
5

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

דוגמה 4:
קלט:
a = [-1, -1, 3, -2, -2]
פלט:
3

הסבר: המספר 3 מופיע פעם אחת בלבד

דוגמה 5:
קלט:
a = [7, 8, 8, 9, 9, 10, 10, 11, 11]
פלט:
7

הסבר: המספר 7 מופיע פעם אחת בתחילת המערך

דוגמה 6:
קלט:
a = [42, 42, 13, 13, 12, 12, -5]
פלט:
-5

הסבר: המספר -5 מופיע פעם אחת בלבד

דוגמה 7:
קלט:
a = [0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 7, 7]
פלט:
6

הסבר: המספר 6 מופיע פעם אחת בלבד במערך

דוגמה 8:
קלט:
a = [100, 100, 300, 200, 200, 400, 400]
פלט:
300

הסבר: המספר 300 מופיע רק פעם אחת במערך

Loading...
נשמרLn 1, Col 1

קלט:

a = [6, 6, 18, 18, -4, -4, 12, 9, 9]

הפלט המבוקש:

12