记录编号 7776 评测结果 AAAAAAAAAA
题目名称 美酒节赛羊 最终得分 100
用户昵称 Gravatarfrancis 是否通过 通过
代码语言 Pascal 运行时间 1.858 s
提交时间 2008-11-11 17:06:45 内存使用 0.11 MiB
显示代码纯文本
program goat2;
const
fin='goat.in';
fou='goat.out';
var
f:array[1..2,0..100]of longint;
all,k,temp,p,q,s,h,i,j:longint;
f1,f2:text;

procedure init;
begin
assign(f1,fin);
assign(f2,fou);
reset(f1); rewrite(f2);
read(f1,s,h);
for i:=0 to 1 do f[1,i]:=1;
for i:=2 to 4 do f[1,i]:=5;
for i:=5 to h do f[1,i]:=10;
all:=f[1,h];
p:=2; q:=1; k:=1;
end;

procedure main;
begin
while all<=s-1 do
begin
 inc(k);
 temp:=p; p:=q; q:=temp;
 for j:=0 to h-1 do
 begin
  if (j+1<h)and(f[q,j]<f[p,j+1]+1)   then f[q,j]:=f[p,j+1]+1;
  if (j-2>=0)and(f[q,j]<f[p,j-2]+5)  then f[q,j]:=f[p,j-2]+5;
  if (j-5>=0)and(f[q,j]<f[p,j-5]+10) then f[q,j]:=f[p,j-5]+10;
  if (j>0)and(f[q,j]<f[q,j-1])       then f[q,j]:=f[q,j-1];
 end;
 all:=f[q,h-1];
end;
end;

procedure print;
begin
if all=s-1 then inc(k);
write(f2,k);
close(f1); close(f2);
end;

begin
init;
main;
print;
end.