|  | 
|  | 
| вернуться в форум | Why I got WA? HELP!!!!! I think my program is right, but it got WA, why? Could you help me?
 Here is my code:
 
 const
 maxnum=1000000000;
 var
 best,i,j,dis,cost:cardinal;
 begin
 for i:=s+1 to t do begin
 best:=maxnum;
 for j:=i-1 downto s do begin
 if f[j]=maxnum then continue;
 dis:=abs(len[i]-len[j]);
 if dis>l[3] then break
 else if dis>l[2] then cost:=c[3]
 else if dis>l[1] then cost:=c[2]
 else cost:=c[1];
 if cost>=maxnum then break
 else if cost+f[j]<best then best:=cost+f[j];
 end;
 if best<maxnum then f[i]:=best;
 end;
 writeln(f[t]);
 end;
 
 begin
 for i:=1 to 3 do read(l[i]);
 for i:=1 to 3 do read(c[i]);
 readln(n);
 readln(s,t);
 if s>t then begin
 i:=s;
 s:=t;
 t:=i;
 end;
 if s=t then begin writeln(0);halt;end;
 for i:=2 to t do begin
 read(len[i]);
 f[i]:=maxnum;
 end;
 f[s]:=0;
 solve;
 end.
Oh, now it is accepted. The tests contains two stations which are at the same position! | 
 | 
|