Submission

Status:

----------

Subtask/Task Score:

0/100

Score: 0

User: punn7101

Problemset: จำนวนเฉพาะ (2560)

Language: c

Time: 0.002 second

Submitted On: 2025-09-22 16:07:16

#include <stdio.h>
#include <stdbool.h>
#include <math.h>

void sieveOfEratosthenes(int n) {
    bool isPrime[n + 1];

    for (int i = 0; i <= n; i++)
        isPrime[i] = true;

    isPrime[0] = isPrime[1] = false;

    for (int p = 2; p <= sqrt(n); p++) {
        if (isPrime[p]) {
            for (int i = p * p; i <= n; i += p)
                isPrime[i] = false;
        }
    }
    for (int i = 2; i <= n; i++) {
        if (isPrime[i])
            printf("%d ", i);
    }
    printf("\n");
}

int main() {
    int n;
    scanf("%d", &n);

    sieveOfEratosthenes(n);

    return 0;
}