TS10 Lâm Đồng 2022 - Số nguyên tố nhỏ nhất
Xem dạng PDF
Gửi bài giải
Điểm:
11,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
1G
Input:
stdin
Output:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT
Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Viết chương trình nhập vào một dãy các số nguyên gồm ~n~ phần tử ~a_i~ (~1 \le i \le n \le 10^{2}~, ~-10^{3} \le a_i \le 10^{12}~), xuất ra số nguyên tố nhỏ nhất trong dãy.
Input
Một số tự nhiên ~n~ và ~n~ số nguyên ~a_i~.
Output
Số nguyên tố nhỏ nhất trong dãy, trường hợp không có số nguyên tố nhỏ nhất thì xuất ra số ~-1~.
Sample Input 1
7
13 -11 17 66 2 4 33
Sample Output 1
2
Bình luận
include <bits/stdc++.h>
using namespace std; bool check(long long so){ if(so==2 || so==3) return true; if(so<2 || so%2==0 || so%3==0) return false; for(long long i = 5; i*i<=so; i+=6){ if(so%i==0 || so%(i+2)==0) return false; } return true; } long long n, kq= 1e18; int main() { iosbase::syncwith_stdio(0); cin.tie(0); cin >> n; for(int i = 1; i<=n; ++i){ long long so; cin >> so; if(check(so)) kq = min(so, kq); } if(kq==1e18) cout << -1; else cout << kq; return 0; }