Az alábbi letöltési lehetőségek közül választhatsz: (
segítség)
Típus: text/plain
Tartalmaz szöveget
Karakterkódolás: us-ascii
Méret: 1 KB
program spam;
type kar = string[4];
const code:array['A'..'Z'] of kar = ('4','|3','(','|)','3','|=','6','#','|','_|','|<','|_','|\/|','|\|','0','|0','(,)','|?','5','7','|_|','\/','\/\/','><','-/','2');
maxL=4;
var szoveg:string;
cache:array of longint;
function crypt(s:string):string;
var i:longint;
begin
result:='';
for i:=1 to length(s) do result := result+code[s[i]];
end;
function db(x:longint):longint;
var ch:char;
begin
IF CACHE[x]<>-1 THEN RESULT:=CACHE[X] ELSE BEGIN
result:=0;
if x<=length(szoveg) then
begin
for ch:='A' to 'Z' do
if (copy(szoveg,x,length(code[ch]))=code[ch]) then
result:=result + db(x+length(code[ch]));
end
else if x=length(szoveg)+1 then result:=1;
END;
cache[x]:=result;
end;
var i:longint;
begin
while(true) do
begin
readln(szoveg);
if szoveg='end' then break;
szoveg:=crypt(szoveg);
setlength(cache,length(szoveg)+maxL+1);
for i:=1 to length(szoveg)+maxL do cache[i]:=-1;
writeln(db(1));
end;
end.