1099:第n小的质数 (1)
时间:2024-06-21 14:59
作者:lizq
点击:次
#include iostream#include cmathusing namespace std;int main(){ //素数筛算法:先找出100000以内的所有质数 int a[100000]={}; for(int i=2;i=sqrt(100000);i++){ if(a[i]==0){ for(int j=i*i;j=100000;j+=i){ if(a[j]==0) a[j]=1; } } }//-
#include <iostream>
#include <cmath>
using namespace std;
int main(){
//素数筛算法:先找出100000以内的所有质数
int a[100000]={};
for(int i=2;i<=sqrt(100000);i++){
if(a[i]==0){
for(int j=i*i;j<=100000;j+=i){
if(a[j]==0) a[j]=1;
}
}
}
//---------------//
int n;
cin>>n;
int m=0;//计数
for(int i=2;i<100000;i++){
if(a[i]==0){
m++;
if(m==n){//第n个质数找到了
cout<<i;
return 0;
}
}
}
return 0;
}
(责任编辑:lizq) |