Pagini recente » Cod sursa (job #619417) | Cod sursa (job #1940050) | Cod sursa (job #2198320) | Cod sursa (job #3180879) | Cod sursa (job #2894960)
#include <iostream>
#include <unordered_map>
#include <tuple>
#include <fstream>
#include <vector>
using namespace std;
ifstream f("Loto.in");
ofstream g("Loto.out");
int main() {
int n,s,i,suma,j,z,ok=0,aux;
f>>n>>s;
unordered_map<int, tuple<int,int,int>>M;
vector<int>v;
for(i=0;i<n;i++)
{
f>>aux;
v.push_back(aux);
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
for(z=0;z<n;z++)
{
suma = v[i]+v[j]+v[z];
if(suma<=s)
{
M[suma]=make_tuple(v[i],v[j],v[z]);
}
}
}
}
unordered_map<int, tuple<int,int,int>>::iterator it;
unordered_map<int, tuple<int,int,int>>::iterator jt;
for(it = M.begin(); it != M.end(); ++it){
for(jt = M.begin(); jt != M.end(); ++jt){
if(it->first + jt->first == s){
g<<get<0>(it->second)<<" "<<get<1>(it->second)<<" "<<get<2>(it->second)<<" ";
g<<get<0>(jt->second)<<" "<<get<1>(jt->second)<<" "<<get<2>(jt->second)<<" ";
ok = 1;
break;
}
}
if(ok==1){
break;
}
}
if(ok==0){
g<<-1;
}
g.close();
f.close();
return 0;
}