讨论 / Help Me!Thanks!
海的翅膀 2008-10-23 02:47:00
点我顶贴 收藏 删除
测试结果1: 测试结果错误.错误结果为:3

正确结果应为:0

测试结果2: 测试结果错误.错误结果为:4

正确结果应为:2

测试结果3: 测试结果正确

测试结果4: 测试结果错误.错误结果为:49

正确结果应为:38

测试结果5: 测试结果错误.错误结果为:99

正确结果应为:78

测试结果6: 测试结果错误.错误结果为:3

正确结果应为:0

测试结果7: 测试结果错误.错误结果为:4

正确结果应为:2

测试结果8: 测试结果正确

测试结果9: 测试结果错误.错误结果为:49

正确结果应为:38

测试结果10: 测试结果错误.错误结果为:99

正确结果应为:78

提交代码: Program P62;

Type

Tn = 0..100;

Var

n : Tn;

a : Array[Tn] Of Integer;

num : Tn;

sum : 0..1000000;

Procedure Init;

Var

i : Tn;

Begin

sum := 0;

Readln(n);

For i:=1 To n Do

Begin

Read(a[i]);

Inc(sum, a[i]);

End

End;

Procedure Work;

Var

i : Tn;

l : Integer;

Begin

num := 0;

i := 1;

While i <= n - 1 Do

Begin

While (a[i] = sum) And (i <= n -1) Do

Inc(i);

If i = n

Then

Exit;

l := a[i] - Sum;

Dec(a[i], l);

Inc(i);

Inc(a[i], l);

Inc(num)

End;

End;

Procedure Outit;

Begin

Write(num)

End;

Begin

Init;

Work;

Outit

End.

#1 saber@2008-07-10 05:50:00
回复 删除
const

maxn=100;

var

i,j,n,step,ave:longint;

a:array[1..maxn]of integer;

begin

readln(n);

ave:=0;

for i:=1 to n do begin

read(a[i]);

inc(ave,a[i]);

end;

ave:=ave div i;

for i:=1 to n do dec(a[i],ave);

i:=1;j:=n;

while a[i]=0 do inc(i);

while a[j]=0 do dec(j);

while (i<j) do

begin

inc(a[i+1],a[i]);

a[i]:=0;

inc(step);

inc(i);

while a[i]=0 do inc(i);

end;

writeln(step);

end.

#2 pascalnew@2008-07-18 05:51:00
回复 删除
此题很简单,竟然还是02提高组的题目...
#3 yidingbaosong@2008-10-23 02:11:00
回复 删除
你测试点都错完了 重新写吧 乖

#4 小小小学生@2008-10-23 02:47:00
回复 删除
呵呵 楼上说得像`````:-)
查看更多回复
提交回复