Răspuns :
#include <iostream>
#include <fstream>
using namespace std;
int L, n;
int a[100]; //Vectorul cu repere
int v[100]; //Vectorul solutiei
void afis(int k){
static int nr = 1;
cout << "\nSolutia #" << nr++ << " : ";
for(int i = 1; i <= k;i++) cout << v[i] << " ";
}
void backt(int lung, int k){
for (int i=1; i <=n;i++){
v[k] = a[i];
lung += a[i];
if(lung == L) afis(k);
else if (lung < L) backt(lung,k+1);
lung -= a[i];
}
}
int main()
{
ifstream in("date.txt");
in >> L >> n;
for (int i=1;i<=n;i++) in >> a[i];
backt(0,1);
}
Vă mulțumim că ați vizitat site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Dacă aveți întrebări sau nevoie de asistență suplimentară, nu ezitați să ne contactați. Vă așteptăm cu drag data viitoare și nu uitați să ne adăugați la favorite!