求助大牛!只有两个点AC
查看原帖
求助大牛!只有两个点AC
565669
Marrelia楼主2022/3/25 00:20

如标题

#include <bits/stdc++.h>
using namespace std;

bool isComp[100005];
int zhs;
int zs;
int main() {
    int n;
    scanf("%d", &n);
    isComp[1]=1;
    for(int i=2;i*i<=n;i++)
    {
        if(isComp[i]==0)  //如果是素数
            for(int j=i*i;j<=n;j+=i) //将他的倍数记为合数
                isComp[j]=1;   //标记
    }
    for (int i=1; i<=n; ++i){
        if(isComp[i]==0){
            printf("%d\n", i);
            zhs+=i;
            zs++;
            if(zhs>=n) break;
        }
    }
    printf("%d",zs);
    return 0;
}
2022/3/25 00:20
加载中...