好像数组开得有点大。其他还有什么地方有问题吗?

P3383 【模板】线性筛素数

我先来!希望......
by 用户已注销 @ 2019-04-09 19:36:28


希望更丰富的展现?使用Mark♂down
by aminoas @ 2019-04-09 19:37:10


markdown翻译 ```cpp #include<stdio.h> int prime[10000005]; int f[10000005]; int main(){ int N,M,i,j,op=0; scanf("%d%d",&N,&M); for(i=2;i<=N;i++){ if(f[i]==0) prime[++op]=i; for(j=1;j<=op;j++){ f[i*prime[j]]=1; if(i%prime[j]==0) break; } } while(M--){ int k; scanf("%d",&k); if(!f[k]) printf("Yes\n"); else printf("No\n"); } return 0; } ```
by ZTL_UwU @ 2019-04-09 19:45:07


提交就全RE了
by 准图灵奖得主 @ 2019-04-09 19:58:53


我知道了 for(j=1;j<=op;j++){ f[i*prime[j]]=1; if(i%prime[j]==0) break; } 循环应该改成for(j=1;j<=op&&i*prime[j]<=N;j++){ f[i*prime[j]]=1; if(i%prime[j]==0) break; }
by 准图灵奖得主 @ 2019-04-09 20:35:59


谢谢啦
by 准图灵奖得主 @ 2019-04-09 20:37:08


数组越界所以全部是运行错误
by 准图灵奖得主 @ 2019-04-09 20:38:56


话说 ~~~cpp int prime[10000005]; int f[10000005] ~~~ 不会MLE吗?
by World_Creater @ 2019-04-09 20:50:09


@[大头儿子](/space/show?uid=122836) 不会? ![](https://cdn.luogu.com.cn/upload/pic/56508.png )
by 樱花飞舞 @ 2019-04-13 15:14:18


洛谷上数组开多大不会爆啊
by 准图灵奖得主 @ 2019-04-19 23:12:56


| 下一页