存一个。
#includeusing namespace std; typedef long long ll; typedef pair pii; #define pb push_back #define fi first #define se second #define mem(a,x) memset(a,x,sizeof(a)); #define db double #define fir(i,a,n) for(int i=a;i<=n;i++) //====================== const int N=1e5+10; int s[N]; int t=0;//t个质数 int judge_zs(int n) { for(int i=2;i*i<=n;i++) { if(n%i==0) return 0; } return 1; } void zhishu() { for(int i=2;i<=1e5;i++) { if(judge_zs(i)) s[t++]=i; } }//到这里都在生成质数 vector zys[N];//存质因数 int a[N]; void sczys(int i)//生成i的质因数并放进zys[i]数组里 { //生成质因数 int temp=lower_bound(s,s+t,i)-s; int j=0; int ii=i; while(j<=temp&&ii!=1) { if(ii%s[j]==0) { zys[i].pb(s[j]); ii/=s[j]; } else j++; } } int main() { zhishu();//打表质数 return 0; }



