Pagini recente » Cod sursa (job #2820447) | Cod sursa (job #1412971) | Cod sursa (job #2108248) | Cod sursa (job #1320126) | Cod sursa (job #2741715)
#include <fstream>
#include <map>
using namespace std;
map<int,pair<int,pair<int,int> > >m;
int v[105];
int main()
{
ifstream in("loto.in");
ofstream out("loto.out");
int n,s,i,j,k,sum;
bool ok=0;
in>>n>>s;
for(i=1;i<=n;i++)
in>>v[i];
for(i=1; i<=n; i++)
{
for(j=1; j<=n; j++)
{
for(k=1; k<=n; k++)
{
sum=v[i]+v[j]+v[k];
if(sum>s)
continue;
if(2*sum==s)
{
out<<i<<" "<<j<<" "<<k<<" "<<i<<" "<<j<<" "<<k;
ok=1;
break;
}
m[sum]=make_pair(i,make_pair(j,k));
if(m.find(s-sum)!=m.end())
{
auto p=m[s-sum];
out<<i<<" "<<j<<" "<<k<<" "<<p.first<<" "<<p.second.first<<" "<<p.second.second;
ok=1;
break;
}
}
if(ok)
break;
}
if(ok)
break;
}
if(!ok)
out<<-1;
return 0;
}