记录编号 138227 评测结果 AAAAAAAAAAAAAAAAAAAA
题目名称 神奇的压缩机 最终得分 100
用户昵称 GravatarWW TT 是否通过 通过
代码语言 Pascal 运行时间 0.657 s
提交时间 2014-11-05 19:29:29 内存使用 0.19 MiB
显示代码纯文本
var f:array[1..5000] of longint;
    len:array[1..5000] of longint;
       te,gg,n,aa,x,y,a,b,i,j,k:longint;
	s1,s2,s:ansistring;

function min(x,y:longint):longint;
begin
if x>y then exit(y);
exit(x);
end;
function max(x,y:longint):longint;
begin
if x>y then exit(x);
exit(y);
end;


procedure init;
begin
readln(s);
n:=length(s);
while s[n]=' ' do
begin
delete(s,n,1);
dec(n);
end;
readln(a,b);
for i:=2 to n do
 for j:=1 to i-1 do
  begin
  x:=i;
  while (x<=n)and(s[x]=s[((x-i) mod j)+i-j ]) do
  inc(x);
  len[i]:=max(len[i],x-i);
  end;

end;

begin
assign(input,'WinCHG.in');
assign(output,'WinCHG.out');
reset(input);
rewrite(output);
init;


f[1]:=a;
 for i:=2 to n do
 begin
 f[i]:=f[i-1]+a;
 for j:=2 to i-1 do
 if (j+len[j]-1)>=i then f[i]:=min(f[i],f[j-1]+b);
 end;
writeln(f[n]);
close(output);
end.