Pagini recente » Cod sursa (job #2157579) | Cod sursa (job #3257589) | Cod sursa (job #1750482) | Cod sursa (job #457979) | Cod sursa (job #2895589)
#include<fstream>
#include<bits/stdc++.h>
#pragma GCC optimize("O3")
using namespace std;
ifstream f("loto.in");
ofstream g("loto.out");
unordered_map<int, tuple<int,int,int>> um;
unordered_map<int,tuple<int,int,int>>::iterator i;
int main()
{
int N, S, nr[101];
f>>N>>S;
for(int i=1;i<=N;i++)
f>>nr[i];
for(int a=1;a<=N;a++)
{for(int b=1;b<=N;b++)
{for(int c=1;c<=N;c++)
{um[nr[a]+nr[b]+nr[c]]=make_tuple(nr[a],nr[b],nr[c]);}
}
}
for(int a=1;a<=N;a++)
{for(int b=1;b<=N;b++)
{for(int c=1;c<=N;c++)
{i=um.find(S-nr[a]-nr[b]-nr[c]);
if(i!=um.end())
{ int sum=nr[a]+nr[b]+nr[c];
g<<nr[a]<<' '<<nr[b]<<' '<<nr[c]<<' '<<get<0>(um[S-sum])<<' '<<get<1>(um[S-sum])<<' '<<get<2>(um[S-sum]);
return 0;
}
}
}
}
g<<"-1";
}