- 合唱队形
- 2009-05-08 17:07:58 @
var a,f:array[0..100]of integer;
min,x,y,n,i,j,k:integer;
begin
readln(n);
for i:=1 to n do read(a[i]);
min:=maxint;
for k:=2 to n-1 do
begin
for i:=1 to k do f[i]:=1;
for i:=1 to k do
for j:=1 to i do
if (a[i]f[j])and(a[i]x then x:=f[i];
for i:=k+1 to n do f[i]:=1;
for i:=k+2 to n do
for j:=k+1 to i do
if(a[j]>a[i])and(f[j]+1>f[i])and(a[j]>a[k])then f[i]:=f[j]+1;
y:=0;
for i:=k+1 to n do if f[i]>y then y:=f[i];
if n-(x+y)
3 条评论
-
zxa LV 7 @ 2009-08-08 09:48:32
你才白吃,人好心帮你看看却得到这样的结果
程序如果输入
3
1 2 3
你不挂了。
如果最优解里最高的那个的位置是最边上的,你程序就挂了。 -
2009-05-09 08:22:02@
白吃
什么都不会,去使吧
-
2009-05-08 20:53:51@
这是干什么的程序????
描述一下过程
- 1