Pagini recente » Istoria paginii runda/info_bv_11-12-1 | Cod sursa (job #1075161) | Cod sursa (job #1886617) | Cod sursa (job #2948559) | Cod sursa (job #1415391)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("loto.in");
ofstream out("loto.out");
int v[10001];
int x[10001];
int n,s,k=6;
void citire()
{
in>>n>>s;
for(int i=1;i<=n;i++)
in>>v[i];
sort(v+1,v+n);
}
bool solve()
{
int i;
for(int i=1;i<=n;i++)
{s-=v[i];
x[v[i]]++;
k--;}
i=n;
if(s!=0 && k!=0)
{
while(s>0 && i!=0 && k!=0)
{
if(s-v[i]>=0)
{
s-=v[i];
x[v[i]]++;
k--;
}
else
i--;
}
}
if(s==0)
return true;
else
return false;
}
int main()
{
citire();
if(solve())
{for(int i=1;i<=n;i++)
if(x[v[i]]!=0)
for(int j=1;j<=x[v[i]];j++)
out<<v[i]<<" ";}
else
out<<"-1";
return 0;
}