为什么A+B这题CE了?

P1001 A+B Problem

Inf_Love @ 2020-12-20 14:09:47

做其他题目报错的,追踪了一下,然后用A+B试了试,结果就CE了

这份代码

#include <iostream>
using namespace std;
int a[4194314] = {1};
int main()
{

    return 0;
}

这是评测具体情况: https://www.luogu.com.cn/record/43956567


by KEBrantily @ 2020-12-20 14:22:10

也不是数组大小的问题

但是大括号确实只能赋数组第一个空间的值

不会是因为 main 函数里没东西吧


by Inf_Love @ 2020-12-20 14:22:42

@MatrixCascade 可是我本来只是想把 a[0] 赋成1啊


by Inf_Love @ 2020-12-20 14:23:06

@KnightL main函数里有东西也没事


by Rui_R @ 2020-12-20 14:23:07

用 {} 赋值的话,你可以在本地看一眼编译出来的exe文件的大小。

你会发现它非常大。大的离谱。因此在OJ上会直接CE掉。


by Rui_R @ 2020-12-20 14:23:20

@The_Three_Body


by KEBrantily @ 2020-12-20 14:24:14

叫 A + B 难住了,wtcl


by MatrixCascade @ 2020-12-20 14:24:33

@KnightL 是数组大小的问题,不知道别瞎说好么?


by Inf_Love @ 2020-12-20 14:24:54

@Rui_R 哦,好像还真是,那您能告诉我原理是什么吗?


by MatrixCascade @ 2020-12-20 14:25:18

就是这样会导致编译时间过长。。。放 OJ 上就会 CE(你试试把数组开到 1000 以下就没事情了)


by Inf_Love @ 2020-12-20 14:27:48

好吧,谢谢各位


上一页 | 下一页