devLupin / algorithm

PS
1 stars 0 forks source link

소수 찾기 알고리즘 #8

Open devLupin opened 1 year ago

devLupin commented 1 year ago

에라토스테네스의 체

#include <cmath>

using namespace std;

bool arr[1000001];

int eratos(int n) {
    fill_n(arr, n, true);

    for(int i=2; i<=sqrt(n); i++) {
        if(!arr[i]) 
            continue;

        for(int j=i*i; j<=n; j += i)
            arr[j] = false;
    }

    int ans = 0;
    for(int i=2; i<=n; i++)
        if(arr[i]) ans++;

    return ans;
}
devLupin commented 8 months ago

10진수 num이 소수인지 판별

using ll = long long;

bool is_prime(ll num) {
    if(num < 2) return false;

    for(int i=2; i<=sqrt(num); ++i) {
        if(num % i == 0) return false;
    }
    return true;
}