讨论 / ...Help me..
lychees 2009-08-28 02:44:00
点我顶贴 收藏 删除
const

nmax=50;

type

int=longint;

var

A:array[1..nmax] of int;

n,m,s:int;

i:int;

begin

readln(m,n,s);

for i:=1 to n do

read(A[i]);

i:=1;

while (i<=n) and (A[i]>s) do inc(i);

{循环过后 i指向s在排行榜里应该在的位置}

if (i>m) or ((i=m) and (s=A[n])) then write(-1)

else write(i);

end.

第四个点死活过不去...

答案输出的是-1...我的结果是1

我觉得这段代码写的还是蛮清晰的呀...

谁能帮我找一个反例呢../~ Thanks~

#1 xdqkid@2009-08-28 02:44:00
回复 删除
第四个点死活过不去...

答案输出的是-1...我的结果是1

program w262;

var a:array[1..50]of longint;

p,s,n,i,j,m:longint;

begin

fillchar(a,sizeof(a),0);

readln(p,s,n);

m:=0;

for i:=1 to s do

readln(a[i]);

for i:=1 to p do

if a[i]<=n then

begin

m:=i;

break;

end;

if m=0 then m:=s+1;

if (m>p) or ((m=p) and (n=a[p])) then

begin

writeln(’-1’);

halt;

end;

writeln(m);

readln;

readln;

end.

查看更多回复
提交回复