文章
34
粉丝
0
获赞
273
访问
5.0k
#include <bits/stdc++.h>
using namespace std;
const int maxn=10000+5;
int prime[maxn];
void getPrime(){
memset(prime,0,sizeof(prime));
for(int i=2;i<maxn;i++){
if(!prime[i]) prime[++prime[0]]=i;
for(int j=1;j<=prime[0]&&prime[j]*i<=maxn;j++){
prime[prime[j]*i]=i;
if(i%prime[j]==0) break;
}
}
}
int main(){
getPrime();
int n;
while(scanf("%d",&n)!=EOF){
int num[10000];
int a=0,count=0;
for(int i=2;i<maxn;i++){
if(prime[i]>=n) break;
if(prime[i]%10==1) {
num[a++]=prime[i];
count++;
}
}
if(count==0){
printf("-1");
break;
}
for(int j=0;j<count;j++){
printf("%d",num[j]);
if(j<count-1) printf(" ");
}
printf("\n");
}
}
登录后发布评论
暂无评论,来抢沙发