Pagini recente » Monitorul de evaluare | Cod sursa (job #1430761) | Cod sursa (job #2620198) | Cod sursa (job #1582357) | Cod sursa (job #1743054)
#include <stdio.h>
int v[100],n,s,a[7],sum;
bool print,af;
void scan(){
FILE *p;
p=fopen("loto.in","r+");
fscanf(p,"%i %i",&n,&s);
for(int i=0;i<n;i++)
{
fscanf(p,"%i",&v[i]);
}
fclose(p);
}
void cout(){
FILE *p;
p=fopen("loto.out","w+");
if(print&&!af){
af=true;
for(int i=1;i<7;i++)
{
fprintf(p,"%i ",a[i]);
}
}else{
if(!af)fprintf(p,"-1");
return;
}
}
void bk(int k){
if(k<=6&&!print){
for(int i=0;i<n;i++){
a[k]=v[i];
sum+=v[i];
if(sum<=s){
if(k==6&&sum==s){print=true;cout();}
else bk(k+1);
}
sum-=v[i];
}
}
}
int main()
{
scan();
bk(1);
cout();
return 0;
}