Pagini recente » Cod sursa (job #1896829) | Cod sursa (job #632119) | Cod sursa (job #311974) | Cod sursa (job #1148446) | Cod sursa (job #2787603)
#include <fstream>
#include <algorithm>
#include <map>
using namespace std;
ifstream cin("loto.in");
ofstream cout("loto.out");
int n,sum;
int v[101];
struct grup3
{
int nr1;
int nr2;
int nr3;
};
multimap<int,grup3> grupuri;
multimap<int,grup3>::iterator it,itSearch;
int main()
{
cin>>n>>sum;
for(int i =0 ; i < n ; i++)
cin>>v[i];
sort(v,v+n);
// for(int i = 0 ; ++i < n;)
// {
// for(int j = i-1 ; ++j < n ; )
// {
// for(int k = j-1; ++k < n ;)
// {
// cout << i << " "<< j << " " << k << endl;
// }
// }
// }
// return 0;
/// generate all 3 number combinations
grup3 gr;
for(int i = 0 ; ++i < n;)
{
for(int j = i-1 ; ++j < n ; )
{
for(int k = j-1; ++k < n ;)
{
gr.nr1 = v[i];
gr.nr2 = v[j];
gr.nr3 = v[k];
grupuri.insert({gr.nr1 + gr.nr2 + gr.nr3,gr});
}
}
}
for(it = grupuri.begin(); it != grupuri.end();it++)
{
int sumaGrup = it->first;
itSearch = grupuri.find(sum-sumaGrup);
if(itSearch != grupuri.end())
{
cout << it->second.nr1 << " "<< it->second.nr2 << " "<< it->second.nr3 << " ";
cout << itSearch->second.nr1 << " "<< itSearch->second.nr2 << " "<< itSearch->second.nr3 ;
return 0;
}
}
cout << "-1";
return 0 ;
}