Pagini recente » Cod sursa (job #1290479) | Cod sursa (job #29438) | Cod sursa (job #2080183) | Cod sursa (job #1212448) | Cod sursa (job #1586143)
program mire;
var f,g:text;
n,m:integer;
a:array[0..27,0..27] of 0..1;
s:array[-1..1001, -1..27] of longint;
procedure citire;
var i:integer;
x,z,y:char;
begin
assign(f,'nrcuv.in'); reset(f);
assign(g,'nrcuv.out'); rewrite(g);
readln(f,n,m);
for i:=1 to m do
begin
readln(f,x,z,y);
a[ord(x)-96,ord(y)-96]:=1;
a[ord(y)-96,ord(x)-96]:=1;
end;
close(f);
end;
procedure dinamica;
var i,j,k:integer;
su:longint;
begin
//s[i,j]= nr de cuv de lungime i ce pot fii formate avand ultima litera j
// s[i,j]=sum(a[i-1,k]) k=1,n cu prop. ca pot forma perechea (k,j) sau (j,k)
for i:=0 to 26 do
s[0,i]:=1;
for i:=1 to n do
begin
for j:=1 to 26 do
begin
su:=0;
for k:=1 to 26 do
if (a[j,k]=0) then
su:=su+s[i-1,k];
s[i,j]:=su;
end;
end;
{for i:=1 to n do
begin
for j:=1 to 26 do
write(s[i,j],' ');
writeln;
end;}
writeln(g,s[n,26]);
close(g);
end;
begin
citire;
dinamica;
end.