בהינתן מערך חד-ממדי arr המכיל ספרות בין 1 ל- 9 (כולל) ומספר שלם חיובי num.
יש להחזיר true אם יש דרך לחבר את כל איברי המערך, כשהם משורשרים למספרים בני ספרה אחת או יותר, כך שסכומם הינו num. אם אין דרך כזו יוחזר false. כל איבר במערך חייב להשתתף בסכום, ופעם אחת בלבד!
אם יש דרך כזו יש להדפיס את החלוקה של הספרות למספרים כך שסכומם הינו הפרמטר num.
השיטה צריכה להיות רקורסיבית ללא שימוש בלולאות כלל. כך גם כל שיטות העזר (אם תכתבו) לא יכולות להכיל לולאות.
null ויש בו לפחות תא אחד. כל התאים מכילים ספרות והספרה 0 אינה מופיעה בו.
arr = [7, 3, 1], num = 38
7 31 true
הסבר: כיוון ש- 7 + 31 = 38
arr = [1, 2, 3, 4, 5], num = 168
123 45 true
הסבר: כיוון ש- 123 + 45 = 168
arr = [6, 7], num = 67
67 true
הסבר: כיוון ש- 67 = 67
arr = [8], num = 8
8 true
הסבר: כיוון ש- 8 = 8
arr = [1, 1, 1], num = 3
1 1 1 true
הסבר: כיוון ש- 1 + 1 + 1 = 3
arr = [6, 6, 4, 4, 4, 1], num = 115
66 44 4 1 true
הסבר: יש כמה פתרונות אפשריים, למשל 66 + 44 + 4 + 1 = 115
arr = [1, 2], num = 4
false
הסבר: אין שום דרך להגיע לתוצאה 4 עם הספרות 1 2
arr = [9, 9, 9, 9, 9], num = 99999
99999 true
הסבר: 99999 = 99999, כל המערך כקבוצה אחת.
קלט:
arr = [7, 3, 1], num = 38
הפלט המבוקש:
7 31 true