Điểm:
900 (p)
Thời gian:
1.0s
Bộ nhớ:
1023M
Input:
bàn phím
Output:
màn hình
Trong ngày thực tập đầu tiên, thầy Hải có một câu đố nho nhỏ cho các học sinh của mình. Cho một số nguyên \(n\), hãy kiểm tra \(n\) có phải là số nguyên tố hay không?
Số nguyên tố là số tự nhiên lớn hơn 1 chỉ có hai ước số dương phân biệt là 1 và chính nó.
Input:
- Gồm một dòng duy nhất là số nguyên \(n (|n| \le 10^{12})\)
Output:
- In ra
YES
nếu \(n\) là số nguyên tố. Ngược lại in raNO
.
Example
Test 1
Input
9
Output
NO
Test 1
Input
7
Output
YES
Bình luận
include <bits/stdc++.h>
define ll long long
const int N=1e7+2;
using namespace std;
ll n,a[N];
bool snt(ll n)
{
if(n<2)return false;
if(n<4)return true;
if(n%2==0||n%3==0)return false;
for(ll i=5;i<=sqrt(n);i+=6)
{
if(n%i==0||n%(i+2)==0)return false;
}
return true;
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(NULL);
// freopen(".inp","r",stdin);
// freopen(".out","w",stdout);
cin >> n;
if(snt(n))cout << "YES\n";
else cout << "NO\n";
return 0;
}
code này cx ok nè
16 bình luận nữa