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;
}
}
}
}