吉大秦少游 2018-11-21 13:05 采纳率: 0%
浏览 1611

1013 数素数 测试点4通过不了,请教有何问题

1013 数素数 (20 point(s))

令 P​i​​ 表示第 i 个素数。现任给两个正整数 M≤N≤10​4​​,请输出 P​M​​ 到 P​N​​ 的所有素数。
输入格式:

输入在一行中给出 M 和 N,其间以空格分隔。
输出格式:

输出从 P​M​​ 到 P​N​​ 的所有素数,每 10 个数字占 1 行,其间以空格分隔,但行末不得有多余空格。
输入样例:

5 27

输出样例:

11 13 17 19 23 29 31 37 41 43
47 53 59 61 67 71 73 79 83 89
97 101 103

 #include <iostream>
#include <cmath>
using namespace std;

int main(){
    int M,N,cnt=0,k=0,j,flag=0; cin>>M>>N;
    for(int i=2;i<=100000;i++){
        for(j=2;j<=sqrt(i);j++){
            if(i%j==0)  break;  //i 不是素数 
        }
        if(j>sqrt(i)){  //i 是素数 
            cnt++;
            if(cnt>=M&&cnt<N){
                k++;
                printf("%d%c",i,k%10==0?'\n':' ');
            }
            if(cnt==N){
                cout<<i;
                flag=1;
            }   
        }
        if(flag==1) break;
    }
    return 0;
} 
  • 写回答

1条回答 默认 最新

  • 天杪 2019-01-17 14:20
    关注

    for(int i=2;i<=100000;i++)
    你并不知道第10000个素数是否超过了100000.问题就出在这里。

    评论

报告相同问题?

悬赏问题

  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题