Pagini recente » Cod sursa (job #1169277) | Cod sursa (job #34723) | Cod sursa (job #2263678) | Cod sursa (job #3004674) | Cod sursa (job #2894011)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
int v[101],n,s;
pair <int, pair <int, int>> triplet;
unordered_map <int, pair <int, pair <int, int>> > sume;
void rezolvare(){
int suma;
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
for(int k=0; k<n; k++){
suma=v[i]+v[j]+v[k];
if(suma<s){
if(sume.find(s-suma)!= sume.end() )
{
fout<<v[i]<<" "<<v[j]<<" "<<v[k]<<" ";
triplet=sume[s-suma];
fout<<v[triplet.first]<<" "<<v[triplet.second.first]<<" "<<v[triplet.second.second];
return;
}
if(suma*2==s)
{
fout<<v[i]<<" "<<v[j]<<" "<<v[k]<<" "<<v[i]<<" "<<v[j]<<" "<<v[k];
return;
}
triplet.first=i;
triplet.second.first=j;
triplet.second.second=k;
sume[suma]=triplet;
}
}
fout<<-1;
return;
}
int main()
{
fin>>n>>s;
for( int i=0; i<n; i++)
fin>>v[i];
rezolvare();
return 0;
}