欢迎使用本站,预祝练习时长两年半的选手们到成功! [本模块信息来自tem/def/head]

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)
    顶一下
    (0)
    0%
    踩一下
    (0)
    0%