Pagini recente » Cod sursa (job #1727075) | Cod sursa (job #1997930) | Cod sursa (job #1065239) | Cod sursa (job #987040) | Cod sursa (job #252192)
Cod sursa(job #252192)
program lista;
var f:text;
as,ev:boolean;
st:array[1..1000] of 0..26;
mat:array[1..26,1..26] of 0..1;
n,m,i,j:integer;
nr:longint;
a:string[3];
begin
assign(f,'nrcuv.in');
reset(f);
readln(f,n,m);
for i:=1 to m do
begin
readln(f,a);
mat[ord(a[1])-96,ord(a[3])-96]:=1;
mat[ord(a[3])-96,ord(a[1])-96]:=1;
end;
close(f);
assign(f,'nrcuv.out');
rewrite(f);
j:=1;
st[j]:=0;
while j>0 do
begin
repeat
if st[j]<26 then begin
st[j]:=st[j]+1;
as:=true
end
else as:=false;
if as then if mat[st[j],st[j-1]]=1 then ev:=false
else ev:=true
until (not as) or (as and ev);
if as then if j=n then nr:=(nr+1)mod 104659
else begin
j:=j+1;
st[j]:=0
end
else j:=j-1
end;
writeln(f,nr);
close(f);
end.