📄 empire.pas
字号:
var i,j,k,n,l,s:longint;
f:array[1..200,1..200] of longint;
function make(p:longint):longint;
begin
if odd(p) then make:=p else make:=p-1;
end;
begin
assign(input,'empire.in');
reset(input);
assign(output,'empire.out');
rewrite(output);
readln(n,k);
if k=0 then begin writeln(1);close(output);halt end;
if k>=2*n-1 then begin writeln(0);close(output);halt end;
for i:=1 to 2*n-1 do
if odd(i) then f[i,1]:=i else f[i,1]:=i-1;
for i:=1 to 2*n-1 do
for j:=2 to i do
for l:=1 to i-j+1 do
f[i,j]:=(f[i,j]+f[i-l,j-1]*(make(i)-j+1)) mod 504;
i:=2*n-1;
if k=1 then begin writeln((i*(i+1) div 2-i div 2) mod 504);close(output);halt end else
for i:=k to 2*n-1 do inc(s,f[i,k]);
writeln(s mod 504);
close(input);
close(output);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -