Cod sursa(job #22076)

Utilizator alex_damianDamian Alexandru alex_damian Data 25 februarie 2007 15:53:49
Problema Lista lui Andrei Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.7 kb
var a:array[1..1002, 1..30] of longint;
    lit:array[1..30, 1..30] of boolean;
    n, m, i, j, k: longint;
    s: int64;
    c1, c2:char;
    f, g:text;


begin
assign(f,'nrcuv.in');reset(f);
assign(g,'nrcuv.out');rewrite(g);
fillchar(lit, sizeof(lit), false);
readln(f,n,m);
for i:=1 to m do begin
  readln(f, c1, c2, c2);
  lit[ord(c1)-96][ord(c2)-96]:=true;
  lit[ord(c2)-96][ord(c1)-96]:=true;
end;
for i:=1 to 26 do a[1][i]:=1;
for i:=2 to n do
  for j:=1 to 26 do begin
    s:=0;
    for k:=1 to 26 do
      if (lit[j][k] = false) then inc(s,a[i-1][k]);
    a[i][j]:=s mod 104659;
  end;
s:=0;
for i:=1 to 26 do inc(s, a[n][i]);
writeln(g, s mod 104659);
close(f);
close(g);
end.