"משקל נקי" של מספר שלם חיובי הוא סכום הספרות של המספר, בלי הספרה השמאלית ביותר ובלי הספרה הימנית ביותר. לדוגמה: המשקל הנקי של 123 הוא 2. המשקל הנקי של 12345 הוא 2+3+4=9. המשקל הנקי של 18 הוא 0. המשקל הנקי של 9 הוא 0.
מערך של מספרים שלמים נקרא "מערך ממוין לפי משקלים" אם ה"משקלים" של כל איברי המערך ממוינים בסדר עולה ממש (ללא חזרות של משקל). לדוגמה, המערך 35, 923, 781, 12349, 1892 (משקלים: 0, 2, 8, 9, 17) ממוין לפי משקלים.
כתבו פעולה אשר מקבלת מספר שלם חיובי ומחזירה את ה"משקל הנקי" שלו.
כתבו פעולה אשר מקבלת מערך חד-ממדי של מספרים שלמים ומחזירה ערך true אם המערך הוא "מערך ממוין לפי משקלים", אחרת תחזיר ערך false.
כתבו פעולה אשר מקבלת שני מערכים חד-ממדיים של מספרים שלמים וחיוביים; כל אחד מהמערכים הוא "מערך ממוין לפי משקלים". הפעולה תדפיס את כל האיברים בעלי "משקל נקי" ייחודי — כלומר את כל האיברים מהמערך הראשון שה"משקל הנקי" שלהם לא מופיע במערך השני, ואת כל האיברים מהמערך השני שה"משקל הנקי" שלהם לא מופיע במערך הראשון. לדוגמה, עבור המערכים 35,923,781,12349,1892 (משקלים 0,2,8,9,17) ו-2,358,181,5821,1742,36621,27731 (משקלים 0,5,8,10,11,14,17): הפעולה תדפיס 923, 358, 12349, 5821, 1742, 36621.
מהן סיבוכיות זמן הריצה של הפעולות שכתבתם בסעיפים ב' ו-ג'? הסבירו את תשובתכם.
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.