Number Theory-Prime Number

Trial division to judge prime number

Factor of decomposition

int get_primes(int n){
    for(int i = 2;i <= n/i;i++){
        if(n%i==0){
            int k = 0;
            while(n%i==0){
                k++;
                n/=i;
            }
            cout<<i<<" "<<k<<endl;
        }
    }
    if(n>1)  cout<<n<<" "<<1<<endl;
    puts("");
}

Egypt

In Egyptian sieve, multiples of prime numbers are not prime numbers, and Egyptian sieve uses this property for screening.

bool st[1000010];
void get_primes(int n){
    for(int i = 2;i<=n;i++){
        if(!st[i]){
            cout<<i<<endl;
            for(int j=i ;j<=n/i;j++){
                st[j*i]=true;
            }
        }
    }
}

Wire sieve

Guess you like

Origin www.cnblogs.com/cqyinsist/p/12743750.html