Pagini recente » Cod sursa (job #2692158) | Cod sursa (job #3229591) | Cod sursa (job #2720369) | Cod sursa (job #874029) | Cod sursa (job #35483)
Cod sursa(job #35483)
var v:array[1..2000,1..27]of longint;
c1,c2:array[1..2000]of integer;
i,j,s,k,n,m,nr:longint;
c:char;
function gasit(a,b:longint):boolean;
var i:longint;
begin
gasit:=false;
for i:=1 to m do
if ((a=c1[i])and(b=c2[i]))or((b=c1[i])and(a=c2[i]))
then begin
gasit:=true;
exit;
end;
end;
begin
assign(input,'nrcuv.in');reset(input);
assign(output,'nrcuv.out');rewrite(output);
readln(n,m);
for i:=1 to m do
begin
read(c);
c1[i]:=ord(c)-ord('a')+1;
read(c);
read(c);
c2[i]:=ord(c)-ord('a')+1;
readln;
end;
for i:=1 to 27 do
v[1,i]:=1;
for i:=2 to n do
for j:=1 to 26 do
for k:=1 to 26 do
begin
if (not gasit(j,k)) then
v[i,j]:=(v[i,j]+v[i-1,k])mod 104659;
end;
for i:=1 to 26 do
s:=(s+v[n,i])mod 104659;
writeln(s);
close(input);close(output);
end.