原代码如下
//#include<iostream>
//#include<math.h>
using namespace std;
int PrimeNumber[10000] = {0};
int main()
{
int L;
int cnt = 0;
int j;
int sum = 0;
cin >> L;
for (int i = 2; i <= L; i++)
{
for(j = 2; j <= sqrt(i); j++)
if (i % j == 0)
break;
if (j > sqrt(i))
{
// cout << i <<endl;
sum = sum + i;
if (sum > L)
break;
PrimeNumber[i] = 1;
++cnt;
}
}
for(int i = 1; i <= L+10; i++)
{
if (PrimeNumber[i] == 1)
cout << i << endl;
}
cout << cnt << endl;
return 0;
}
输入10000就数组越界了
输入10000就数组越界了吧
– 。淑女范erり 4年前re和ac是什么意思?
– 会长 4年前@。淑女范erり: 还真是。。刚发现。。谢谢啦
– goalltheway 4年前@会长: re 就是runtime error 运行时错误,就是程序运行到一半,程序就崩溃了。
– goalltheway 4年前ac就是accepted