"משקל נקי" של מספר שלם חיובי הוא סכום הספרות של המספר, בלי הספרה השמאלית ביותר ובלי הספרה הימנית ביותר. לדוגמה: המשקל הנקי של 123 הוא 2. המשקל הנקי של 12345 הוא 2+3+4=9. המשקל הנקי של 18 הוא 0. המשקל הנקי של 9 הוא 0.
"משקל נקי" של מספר שלם חיובי הוא סכום הספרות של המספר, בלי הספרה השמאלית ביותר ובלי הספרה הימנית ביותר. לדוגמה: המשקל הנקי של 123 הוא 2. המשקל הנקי של 12345 הוא 2+3+4=9. המשקל הנקי של 18 הוא 0. המשקל הנקי של 9 הוא 0.
מערך של מספרים שלמים נקרא "מערך ממוין לפי משקלים" אם ה"משקלים" של כל איברי המערך ממוינים בסדר עולה ממש (ללא חזרות של משקל). לדוגמה, המערך 35, 923, 781, 12349, 1892 (משקלים: 0, 2, 8, 9, 17) ממוין לפי משקלים.
כתבו פעולה אשר מקבלת מספר שלם חיובי ומחזירה את ה"משקל הנקי" שלו. הערה: כותרת הפעולה אינה מודפסת בשאלון — נבחר השם netWeight(int num).
כתבו פעולה אשר מקבלת מערך חד-ממדי של מספרים שלמים ומחזירה ערך true אם המערך הוא "מערך ממוין לפי משקלים", אחרת תחזיר ערך false. הערה: כותרת הפעולה אינה מודפסת בשאלון — נבחר השם isSortedByWeights(int[] arr).
כתבו פעולה אשר מקבלת שני מערכים חד-ממדיים של מספרים שלמים וחיוביים; כל אחד מהמערכים הוא "מערך ממוין לפי משקלים". הפעולה תדפיס את כל האיברים בעלי "משקל נקי" ייחודי — כלומר את כל האיברים מהמערך הראשון שה"משקל הנקי" שלהם לא מופיע במערך השני, ואת כל האיברים מהמערך השני שה"משקל הנקי" שלהם לא מופיע במערך הראשון. לדוגמה, עבור המערכים 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. הערה: כותרת הפעולה אינה מודפסת בשאלון — נבחר השם printUniqueNetWeights(int[] a, int[] b).
מהן סיבוכיות זמן הריצה של הפעולות שכתבתם בסעיפים ב' ו-ג'? הסבירו את תשובתכם.
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.