Cod sursa(job #2142321)

Utilizator romanRoman Marius roman Data 24 februarie 2018 22:14:02
Problema Loto Scor 0
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2014, Anul I Marime 0.73 kb
#include <fstream>
#include <iostream>

using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
long x[1000001],n,i,y[1000001],s,t[1000001],gata=0;
int verif(int nr)
{int ok=0;
     for(i=1;i<=n;i++)
        if(nr==y[i])ok=1;

     return ok;
}

void afis()
{
     for(i=1;i<=6;i++)
        fout<<t[i]<<" ";
     fout<<endl;
}
void part(int k,int sp)
{int i;
if(gata==0&&k<8){
if(sp==0&&k==7)
   {int ok=0;
       for(i=1;i<k;i++)
        t[i]=x[i],ok+=verif(t[i]);
    if(ok==6) afis(),gata=1;
    }
 else for(i=x[k-1];i<=sp;i++)
        {x[k]=i;
        part(k+1,sp-i);
         }
}
}
int main()
{fin>>n>>s;
for(i=1;i<=n;i++)
fin>>y[i];

x[0]=1;
part(1,s);
if(gata==0)fout<<"-1";
}