比赛 NOIP2008集训模拟1 评测结果 ATAAAAAATT
题目名称 地铁重组 最终得分 70
用户昵称 francis 运行时间 0.000 s
代码语言 Pascal 内存使用 0.00 MiB
提交时间 2008-11-10 10:18:37
显示代码纯文本
program subway;
const
fin='subway.in';
fou='subway.out';
var
f:array[1..500,1..300]of longint;
k,i,j,n,p:longint;
f1,f2:text;

procedure init;
begin
assign(f1,fin);
assign(f2,fou);
reset(f1); rewrite(f2);
read(f1,n,p);
for i:=1 to p do
f[1,i]:=1;
for i:=1 to n do
f[i,1]:=1;
end;

procedure main;
begin
for i:=2 to n do
for j:=2 to p do
begin
 f[i,j]:=f[i-1,j];
 for k:=1 to i-2 do
 f[i,j]:=(f[i,j]+f[k,j-1]*f[i-1-k,j]) mod 4096;
 f[i,j]:=(f[i,j]+f[i-1,j-1]) mod 4096;
end;
end;

begin
init;
main;
write(f2,f[n,p]);
close(f1); close(f2);
end.