Kiểm tra số nguyên tố
Xem dạng PDF
Gửi bài giải
Điểm:
100,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, Python
Số nguyên tố là số nguyên lớn hơn ~1~ chỉ có đúng hai ước dương là ~1~ và chính nó. Cho số nguyên ~n~, hãy kiểm tra xem ~n~ có phải số nguyên tố không.
Dữ liệu vào
Một số nguyên ~n~ (~1 \le n \le 10^9~).
Kết quả
In ra YES nếu ~n~ là số nguyên tố, ngược lại in NO.
Ví dụ
Ví dụ 1
Input:
7
Output:
YES
Ví dụ 2
Input:
10
Output:
NO
Giải thích
Gợi ý: nếu ~n~ có một ước ~d~ thì ~n / d~ cũng là ước, nên chỉ cần thử các ước ~d~ với ~d \times d \le n~. Nhờ vậy với ~n \le 10^9~ ta chỉ phải thử khoảng ~31623~ giá trị. Thử mọi ước từ ~2~ đến ~n - 1~ sẽ quá chậm.
Đang tải...