讨论 / AC答案
xtc820 2014-07-22 02:08:52
点我顶贴 收藏 删除
const

maxn=10000;

var

a:array[-1..maxn+1] of longint;

f:array[-2..maxn+3,1..2] of longint;

i,j,n:longint;

function min(a,b:longint):longint;

begin

if a>b then exit(b) else exit(a);

end;

begin

readln(n);

for i:=1 to n do read(a[i]);

for i:=1 to n do

begin

f[i,1]:=min(f[i-1,2],f[i-2,2]);

f[i,2]:=min(f[i-1,1],f[i-1,2])+a[i];

end;

writeln(min(f[n,1],f[n,2]));

end.

注意数据范围

查看更多回复
提交回复