Submission

Status:
PPPPPPPPPPPPPPPPPPPP

Score: 100

User: Pera

Problemset: จำนวนเฉพาะก่อนหน้า

Language: cpp

Time: 0.002 second

Submitted On: 2024-11-29 23:12:57

#include <bits/stdc++.h>

bool isprime(int n);

int main() {
    std::ios_base::sync_with_stdio(false);
    
    int n{};
    std::cin >> n;

    int count{0};
    int currentnum {n - 1};

    int arr[5];
    std::fill (arr, arr + 5, -1);

    while (true) {
        if (count > 5 || currentnum < 2) break;

        if (isprime(currentnum)) {
            arr[count] = currentnum;
            count++;
        }

        currentnum--;
    }

    for (int i {4}; i >= 0; i--) {
        if (arr[i] == -1) continue;
        std::cout << arr[i] << " ";
    }
    std::cout << '\n';
    return 0;

}

bool isprime(int n) {
    if (n <= 1) return false;
    if (n <= 3) return true;
    for (int i {2}; i * i <= n; i++) {
        if (n % i == 0) return false;
    }
    return true;
}