Cod sursa(job #403270)

Utilizator DavideVitelaruDavide Vitelaru DavideVitelaru Data 24 februarie 2010 19:44:28
Problema Loto Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.97 kb
program loto;

var n,s,i:integer;
    f:text;
    a:array[1..100] of integer;
    sol:array[1..100] of integer;
    finish:boolean;

procedure tryEnd;
var i,nr:integer;
begin
       nr:=0;
       for i:=1 to 6 do
                nr:=nr+sol[i];
       if nr=s then finish:=true;
end;

procedure back(k:integer);
var i:integer;
begin
    if (k>6) then tryEnd
    else
        for i:=1 to n do begin
                if not finish then begin
                sol[k]:=a[i];
                back(k+1);
                end else break;
        end;
end;

begin
        finish:=false;
        {citire}
        assign(f,'loto.in');
        reset(f);
        readln(f,n,s);
        for i:=1 to n do read(f,a[i]);
        close(f);

        {rezolvare}
        back(1);

        {scriere}
        assign(f,'loto.out');
        rewrite(f);
        if (finish=false) then write(f,'-1')
        else for i:=1 to 6 do write (f,sol[i],' ');
        close(f);
end.