Cod sursa(job #879200)

Utilizator robertidRobert robertid Data 15 februarie 2013 08:24:48
Problema Loto Scor 10
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.17 kb
program loto;
var d : array[0..6] of byte;
    a : array[1..100] of longint;
    f,g : text;
    s,r,i,k,n,min,max : longint;
    ok : boolean;

procedure bkt;
begin
    k := 1; d[k] := 0;
    while k > 0 do begin
        while d[k] < n do begin
            d[k] := d[k] + 1;
            if k = 6 then begin
                r := 0;
                for i := 1 to k do r := r + a[d[i]];
                if s = r then begin
                    for i := 1 to k do write(g,a[d[i]],' ');
                    k := 1; d[k] := n;
                    ok := false;
                    end;
                end
            else begin
                k := k + 1;
                d[k] := 0;
                end;
            end;
        k := k - 1;
        end;
end;

begin
    assign(f,'loto.in'); reset(f);
    assign(g,'loto.out'); rewrite(g);
    readln(f,n,s);
    for i := 1 to n do read(f,a[i]);
    min := a[1]; max := min;
    for i := 1 to n do
        if min > a[i] then min := a[i]
        else if max < a[i] then max := a[i];
    ok := true;
    if (min*6 <= s) and (max*6 >= s) then
        bkt;
    if ok then write(g,-1);
    close(f); close(g);
end.