为什么只输出6个???
#include<bits/stdc++.h>
using namespace std;
int n;
int f[100005];
int temp=1;
int ans=0;
int zhi[100005];
int main(){
cin>>n;
n/=2;
f[0]=0;
zhi[1]=2;
for(int i=3;i<=n;i++){//质数筛
bool a=true;
for(int j=2;j*j<=i;j++){
if(i%j==0){
a=false;
break;
}
}
if(a){
temp++;
zhi[temp]=i;
}
}
for(int i=1;i<=temp;i++){//求前缀和
f[i]=zhi[i]+f[i-1];
//cout<<f[i]<<endl;
}
for(int i=1;i<=temp;i++){
if(f[i]>n)break;
ans++;
}
for(int i=1;i<=ans;i++){//输出
cout<<zhi[i]<<endl;
}
cout<<ans;
return 0;
}