superprime

Xem PDF



Tác giả:
Dạng bài
Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Số nguyên tố là một số nguyên dương lớn hơn \(1\) và chỉ có duy nhất hai ước số là \(1\) và chính nó.

Một số nguyên dương được gọi là một số siêu nguyên tố, nếu chính nó là một số nguyên tốsố tận cùng của nó cũng là một số nguyên tố.

Ví dụ: \(13\) là một số siêu nguyên tố, vì \(13\) là một số nguyên tố và \(3\) cũng là một số nguyên tố.

Input

  • Một số nguyên dương \(N(1 \leq N \leq 2000000000)\).

Output

  • in ra "YES" nếu \(N\) là số siêu nguyên tố, ngược lại in ra "NO".

Example

Test 1

Input
13
Output
YES

Bình luận


  • 0
    ngocuyencoder    10:31 p.m. 20 Tháng 11, 2024

    PYTHON

    Python
    a = int(input())
    b = list(map(int,str(a)))
    def k(n):
        # THUẬT TOÁN KIỂM TRA SỐ NGUYÊN TỐ ( BY NGOCUYENCODER )
        if n <= 1:
            return 'NO'
        if n == 2:
            return 'YES'
        if n == 3:
            return 'YES'
        #for i in range(10**4+5**5):
        if 'deptrai' in 'vuongtiendatdeptrai':
            a = __import__('random').randint(2, n-2)
            if pow(a, n-1, n) != 1:
                return 'NO'
        return 'YES'
    if k(a) == "YES" and k(b[-1]) == 'YES':
        print('YES')
    else:
        print('NO')
    

    • 7 bình luận nữa