Pagini recente » Cod sursa (job #973106) | Cod sursa (job #2968594) | Cod sursa (job #2496226) | Cod sursa (job #80856) | Cod sursa (job #2894039)
#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 citire(){
fin>>n>>s;
for( int i=0; i<n; i++)
fin>>v[i];
}
bool rezolvare(){
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
for(int k=0; k<n; k++){
int suma=v[i]+v[j]+v[k];
if(suma<s){
triplet={i,{j,k}};
sume[suma]=triplet;
}
if(suma<s && 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 1;
}
}
return 0;
}
int main()
{
citire();
if(!rezolvare())
fout<<-1;
return 0;
}