Cod sursa(job #116378)

Utilizator savimSerban Andrei Stan savim Data 18 decembrie 2007 15:34:09
Problema Diamant Scor 60
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.04 kb
var i,j,n,m,x,y:byte;
    k,s:longint;
    a:array[1..20,1..20,-44100..44100] of integer;
    f1,f2:text;
begin
    assign(f1,'diamant.in');
    assign(f2,'diamant.out');
    reset(f1);
    rewrite(f2);

    readln(f1,n,m,s);

    if (s>44100) then
    begin
        writeln(f2,0);
        close(f1);
        close(f2);
        halt;
    end;
    a[1][1][-1]:=1;
    a[1][1][0]:=1;
    a[1][1][1]:=1;
    for i:=1 to n do
        for j:=1 to m do
        begin
            if (i=n) and (j=m) then break;
            for k:=-44100 to 44100 do
            if (a[i][j][k]<>0) then
            begin
                x:=i;
                y:=j;
                if (y<m) then y:=y+1
                else begin inc(x);y:=1;end;
                a[x][y][k-x*y]:=(a[x][y][k-x*y]+a[i][j][k]) mod 10000;
                a[x][y][k]:=(a[x][y][k]+a[i][j][k]) mod 10000;
                a[x][y][k+x*y]:=(a[x][y][k+x*y]+a[i][j][k]) mod 10000;
            end;
        end;
    writeln(f2,a[n][m][s]);
    close(f1);
    close(f2);
end.