Giả thuyết Goldbach cho rằng mọi số chẵn lớn hơn \(2\) đều viết được thành tổng của hai số nguyên tố. Hãy viết chương trình kiểm chứng giả thuyết này cho một số \(n\) cho trước.
Cho số nguyên \(n\), tìm hai số nguyên tố \(a, b\) sao cho \(a + b = n\). Nếu có nhiều cặp thoả mãn, chọn cặp có \(a \le b\) và \(b\) lớn nhất (tức là \(a\) nhỏ nhất). Nếu không tồn tại cặp nào, in ra \(-1\).
Input
- Một dòng chứa số nguyên \(n\).
Output
- In ra hai số \(a\) và \(b\) cách nhau một dấu cách, hoặc \(-1\) nếu không có đáp án.
Constraints
- \(1 \le n \le 5 \cdot 10^{14}\).
Gợi ý
Với mọi \(n \le 10^{14}\) đã kiểm chứng, số nguyên tố nhỏ trong cặp đáp án không bao giờ vượt quá \(5569\).
Sample Input
20
Sample Output
3 17
Explanation
\(20 = 3+17 = 7+13\); chọn cặp có \(b\) lớn nhất là \((3, 17)\).
Bình luận
Đăng nhập để bình luận
Chưa có bình luận nào.