Pagini recente » Cod sursa (job #2199929) | Cod sursa (job #965920) | Cod sursa (job #638707) | Cod sursa (job #3141464) | Cod sursa (job #334942)
Cod sursa(job #334942)
#include<stdio.h>
#define NMAX 100
int n,s,sp,i,j,pmin,posibil=1,loto[NMAX],answer[6];
int main() {
freopen("loto.in","r",stdin);
freopen("loto.out","w",stdout);
scanf("%d %d",&n,&s);
for(i=0;i<n;i++) scanf("%d",loto+i);
for(i=0;i<n-1;i++) {
pmin=i;
for(j=i+1;j<n;j++)
if(loto[j]<loto[pmin]) pmin=j;
j=loto[i];
loto[i]=loto[pmin];
loto[pmin]=j;
}
if(s>6*loto[n-1]) posibil=0;
else {
i=0;
sp=loto[0];
answer[0]=0;
while((i<5)||(sp!=s)) {
if(s-sp<(5-i)*loto[answer[i]]) {
posibil=0;
break;
}
if(i<5) {
answer[i+1]=answer[i];
sp+=loto[answer[++i]];
}
else {
while(answer[i]==n-1) {
sp-=loto[n-1];
--i;
}
sp-=loto[answer[i]++];
sp+=loto[answer[i]];
}
}
}
if(posibil)
for(i=0;i<6;i++) printf("%d ",loto[answer[i]]);
else printf("-1");
return 0;
}