问题标题: ?

0
0
已解决
曾心
曾心
高级守护
高级守护

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <cmath>
#include <iomanip>
#include <stdio.h>
#include <string>
#include <cstring>
#include <cstdlib>
using namespace std;
int n,a[5005],cnt,b[1000000000000005]; 
int main(){
    cin>>n;
    for(int i=2;i<=n;i++){
        if(n%i==0){
            for(int j=i*2;j<=n;j+=i){
                b[j]=1;
            }
        }
    }
    for(int i=2;i<=n;i++){
        if(b[i]==0){
            cout<<i<<" ";
            cnt+=i;
        }
    }
    return 0;
}

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <cmath>
#include <iomanip>
#include <stdio.h>
#include <string>
#include <cstring>
#include <cstdlib>
using namespace std;
int n,a[5005],cnt,b[1000000000000005]; 
int main(){
    cin>>n;
    for(int i=2;i<=n;i++){
        if(n%i==0){
            for(int j=i*2;j<=n;j+=i){
                b[j]=1;
            }
        }
    }
    for(int i=2;i<=n;i++){
        if(b[i]==0){
            cout<<i<<" ";
            cnt+=i;
        }
    }
    return 0;
}

源文件未编译是为什么


0
已采纳
窦梁健
窦梁健
资深守护
资深守护

b数组开的太大了,申请内存不通过

我要回答