Pagini recente » Cod sursa (job #934174) | Cod sursa (job #306385) | Cod sursa (job #19316) | Cod sursa (job #2792530) | Cod sursa (job #1378848)
#include<fstream>
#include<cstdlib>
#include<tr1/unordered_map>
#define NMAX 101
using namespace std;
using namespace tr1;
unordered_map <int, bool> hs;
int numbers[NMAX];
int main()
{
int n, s;
int i;
int nr1, nr2, nr3;
int nr4, nr5, nr6;
int sum;
ifstream f("loto.in");
f>>n>>s;
for(i=1; i<=n; i++)
f>>numbers[i];
f.close();
for(nr1=1; nr1<=n;nr1++)
for(nr2=1; nr2<=n;nr2++)
for(nr3=1; nr3<=n;nr3++)
if(nr1+nr2+nr3<=s)
hs[(numbers[nr1]+numbers[nr2]+numbers[nr3])]=1;
ofstream g("loto.out");
for(nr1=1; nr1<=n;nr1++)
for(nr2=1; nr2<=n;nr2++)
for(nr3=1; nr3<=n;nr3++)
if(numbers[nr1]+numbers[nr2]+numbers[nr3]<=s && hs.find(s-numbers[nr1]-numbers[nr2]-numbers[nr3])!=hs.end())
{
sum=s-numbers[nr1]-numbers[nr2]-numbers[nr3];
for(nr4=1; nr4<=n;nr4++)
for(nr5=1; nr5<=n;nr5++)
for(nr6=1; nr6<=n;nr6++)
if(numbers[nr4]+numbers[nr5]+numbers[nr6]==sum)
{
g<<numbers[nr1]<<" "<<numbers[nr2]<<" "<<numbers[nr3]<<" "<<numbers[nr4]<<" "<<numbers[nr5]<<" "<<numbers[nr6]<<"\n";
g.close();
exit(0);
}
}
g<<"-1\n";
g.close();
return 0;
}