Pagini recente » Diferente pentru utilizator/vladstoick intre reviziile 8 si 9 | Borderou de evaluare (job #1412949) | Borderou de evaluare (job #3128033) | Diferente pentru ccex2009 intre reviziile 27 si 26 | Cod sursa (job #1124925)
#include <fstream>
#include <iostream>
#include <cstdlib>
using namespace std;
ifstream fin("loto.in");
int N, S, Suma;
int v[1001], sol[7], solutii;
void afiseaza()
{
int i;
for (i = 1; i <= 6; ++i)
cout << sol[i] << ' ';
cout << '\n';
}
void back(int k)
{
int i;
if (k ==7)
if (Suma == S)
{
afiseaza();
solutii++;
exit(0);
}
else;
else
{
for (i = 1; i <= N; ++i)
if (Suma + v[i] <= S)
{
sol[k] = v[i];
Suma += v[i];
back(k+1);
Suma -= v[i];
sol[k] = 0;
}
}
}
int main()
{
int i;
fin >> N >> S;
Suma = 0;
for (i = 1; i <= N; ++i) fin >> v[i];
back(1);
cout << solutii << '\n';
return 0;
}