theme.pas
来自「Magio牛的usaco源代码」· PAS 代码 · 共 51 行
PAS
51 行
{
ID:maigoak1
PROG:theme
}
program theme;
const
maxn=5000;
var
fin,fout:text;
dif:array[1..maxn-1]of shortint;
len:array[1..maxn-2,1..maxn-1]of integer;
{Length of theme ending at two positions minus one}
n,i,j,ans:integer;
n1,n2:byte;
begin
assign(fin,'theme.in');
reset(fin);
readln(fin,n);
dec(n);
read(fin,n2);
for i:=1 to n do begin
n1:=n2;
read(fin,n2);
dif[i]:=n2-n1;
end;
close(fin);
ans:=3;
for i:=2 to n do
len[1,i]:=ord(dif[1]=dif[i]);
for i:=2 to n do
for j:=i+1 to n do begin
if dif[i]=dif[j] then begin
len[i,j]:=len[i-1,j-1]+1;
if len[i,j]>=j-i-1 then len[i,j]:=j-i-1;
end
else
len[i,j]:=0;
if len[i,j]>ans then ans:=len[i,j];
end;
if ans=3 then ans:=0 else inc(ans);
assign(fout,'theme.out');
rewrite(fout);
writeln(fout,ans);
close(fout);
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?