Pagini recente » Cod sursa (job #1114914) | Cod sursa (job #929068) | Arhiva de probleme | preoni2007_runda4_10 | Cod sursa (job #2007253)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("loto.in");
ofstream out("loto.out");
long long v[1001],alese[7];
int main()
{
long long n,nr=0,s,i,nrdemax,cs;
bool ok=0;
in>>n;
in>>s;
for(i=1;i<=n;i++)
{
in>>v[i];
}
sort(v+1,v+n+1);
cs=s;
for(i=1;i<=n&&ok==0;i++)
{
s=cs;
nr=0;
for(i=n;i>=1&&ok==0;i--)
{
nrdemax=s/v[i];
if(i>1)
if((s-nrdemax*v[i])/v[1]+nr+nrdemax!=6)
{
nrdemax--;
}
s-=nrdemax*v[i];
for(int j=6-nr-nrdemax+1;j<=6-nr;j++)
alese[j]=v[i];
nr+=nrdemax;
}
if(nr==6)
ok=1;
else v[n]=0,n--;
}
if(ok==0)
out<<-1;
else
for(i=1;i<=6;i++)
out<<alese[i]<<" ";
return 0;
}