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