#include#include #include #include using namespace std;const int N=1010;bool visit[N];vector prime;int init_prim(){ memset(visit,true,sizeof(visit)); int num=0; prime.push_back(1); for(int i=2; i<=N; i++) { if(visit[i]==true) { num++; prime.push_back(i);//从下标1开始存数 } for(int j=1; (j<=num)&&(i*prime[j]<=N); j++) { visit[i*prime[j]]=false; if(i%prime[j]==0)break; } } return 0;}int main(){ int js,n,c,m; init_prim(); while(scanf("%d %d",&n,&c)!=EOF) { js=0; for(int i=0;i
难点是格式的输出:
注意此题中1也是素数;