Luca vrea să determine toate submulțimile mulțimii M = {4, 5, 17, 24, 11, 16} cu 6 elemente, unde suma elementelor din submulțime nu depășește un prag minim și un prag maxim. Mulțimea este reprezentată cu ajutorul vectorului M cu n elemente numere naturale. Submulțimile generate se afișează cu ajutorul funcției afișare, unde v este un vector auxiliar indexat de la 0, iar l reprezintă lungimea vectorului curent v. Înainte de apelarea funcției algo(1, 6, v, M, 0, 20, 40) elementul v[0] a fost inițializat cu 0.
Algoritm 1
Algorithm algo(i, n, v, M, suma, s_min, s_max)
For j ← v[i − 1] + 1, n execute
v[i] ← j
suma ← suma + M[j]
If s_min ≤ suma ≤ s_max then
afișare(i, v, M)
EndIf
If suma < s_max then
algo(i + 1, n, v, M, suma, s_min, s_max)
EndIf
suma ← suma − M[j]
EndFor
EndAlgorithmAlgoritm 2
Algorithm afișare(d, v, M)
Write "{", M[v[1]]
For i ← 2, d execute
Write ", ", M[v[i]]
EndFor
Write "}", newline
EndAlgorithmLuca știe că primele 4 submulțimi afișate sunt, în această ordine: {4, 5, 17}, {4, 5, 17, 11}, {4, 5, 24}, {4, 5, 11}, dar vrea să știe care este a 8-a submulțime generată. Care dintre cele de mai jos reprezintă răspunsul corect?
5 / 30