ACM中Runtime Error问题 Java

2024-12-02 16:55:09
推荐回答(1个)
回答1:

你逻辑有问题。
for(int i=4;i<=Arr.length;i=i+2){
int n=abs(Arr[Arr.length-i+2],Arr[Arr.length-i]);
num=num+n;
}

i = 4开始 ???
如果只有一个食物,你不就溢出了???
你没把开始的位置存进去 。
最好用二维数组,容易理解点。。

int[] Arr=new int[T + 1 ][2]

要记得把开始位置存进去 。 接下来就是计算 Arr[i]跟Arr[i-1]的距离 。
从 i = 1 开始。到Arr.length长度
for(int i = 1; i <= Arr.length; i ++)