在开始ACM的道路上,很多时候会碰到很大的数据范围,而且要用到数组来进行存储;可能会碰到以下的问题:
#include <stdio.h>
int main()
{
int n, a[10000005]; //局部
while(~scanf("%d", &n)) {
for(int i=0; i<n; i++) scanf("%d", &a[i]);
for(int i=0; i<n; i++) printf("%d\n", a[i]);
}
return 0;
}
编译运行的时候立马出现错误!!!!
不过当时没有深究,旁边的学长只是把数组提到了main函数的前面,然后告诉我,以后要定义很大的数组的时候记得把它定义成全局变量;
Just like that:
#include <stdio.h>
int a[10000005]; //全局
int main()
{
int n;
while(~scanf("%d", &n)) {
for(int i=0; i<n; i++) scanf("%d", &a[i]);