Cod sursa(job #148375)

Utilizator belgun_adrianBelgun Dimitri Adrian belgun_adrian Data 4 martie 2008 11:17:50
Problema Lista lui Andrei Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.05 kb
var n,m,i:integer;
    posib:array['a'..'z','a'..'z'] of boolean;
    a:array['a'..'z',1..1000] of longword;
    c,c2:char;
    t:longword;

procedure citire;
        var f:text;
            i:integer;
            c1,c2,c3:char;
        begin
        fillchar(posib,sizeof(posib),1);
        assign(f,'nrcuv.in');  reset(f);
        readln(f,n,m);
        for i:=1 to m do
             begin
             readln(f,c1,c3,c2);
             posib[c1,c2]:=false;
             posib[c2,c1]:=false;
             end;
        close(f);
        end;


procedure scriere;
        var f:text;
        begin
        assign(f,'nrcuv.out'); rewrite(f);
          writeln(f,t);
        close(f);
        end;
begin
citire;
for c:='a' to 'z' do
    a[c,1]:=1;
for i:=2 to n do
    for c:='a' to 'z' do
        begin
        t:=0;
        for c2:='a' to 'z' do
            if posib[c,c2] then
               t:=(t+a[c2,i-1]) mod 104659;
        a[c,i]:=t;
        end;

t:=0;
for c:='a' to 'z' do
    t:=(t+a[c,n]) mod 104659;
scriere;
end.