#include<bits/stdc++.h> using namespace std; bool book[100000001]; // 用埃氏筛法生成质数表 void prime(int b) { //初始化,默认全部都是质数 memset(book, true, sizeof(book)); book[1]=false;//1不是质数 int n=sqrt(b); for (int i=2;i<=n;i++) { if (book[i]) { //质数的倍数绝对不是质数,把所有质数的倍数全部设为false for (int j=2;j<=b/i;j++) book[i*j]=false; // i*j<=b } } }