MX刚学OI,求助A+B

P1001 A+B Problem

Goldenglow @ 2021-06-30 11:42:03

rt,这份代码本地输出是正确的(windows),lg上是错的,(linux没试过),这是为什么啊/kel

#include<bits/stdc++.h>
using namespace std;
int a[3],b[3];
signed main(){
    cin>>a[1]>>a[2];
    cout<<b[-1]+b[-2];
    return 0;
}

by Orange_qwq @ 2021-06-30 11:50:34

好好写你的A+B,数组越界是必须考虑到某些玄学的问题的,正常人也难以说明


by xfrvq @ 2021-06-30 11:51:10

负数下标不RE吗?


by XYY1411 @ 2021-06-30 11:54:32

……闲的慌?这不是 Python。


by Krystallos @ 2021-06-30 11:56:13

请问您是闲得慌吗?


by XYY1411 @ 2021-06-30 11:56:16

要说为啥,应该是 b[-2] + b[-3]


by AmaZingFantasy @ 2021-06-30 11:56:45

因为b数组-1项不一定是a数组的2项,这两个数组在电脑内存里不一定是紧挨着的。可能您家电脑巧了,刚好在申请内存时把这两个数组挨到了一起,但lg上可能不是,才会导致wa


by guodong @ 2021-06-30 12:18:16

@XYY1411 为啥呀


by guodong @ 2021-06-30 12:18:33

@安湛丰 全局变量一定是紧挨着吧?


by AmaZingFantasy @ 2021-06-30 12:23:15

@guodong 我觉得洛谷oj可能和自家电脑不一样吧,总之这个东西很玄学,我也不太懂。只要数组别访问负界基本没问题


by Harry_hcx @ 2021-06-30 12:24:35

diaoyu????


| 下一页