Dãy Fibonacci gồm các số \(F_0, F_1, F_2, \ldots\) với \(F_0 = 0\), \(F_1 = 1\) và \(F_k = F_{k-1} + F_{k-2}\) khi \(k \ge 2\). Những số đầu tiên của dãy là \(0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, \ldots\)
Cho một danh sách các số nguyên không âm. Với mỗi số \(x\) trong danh sách, hãy cho biết có thể chọn hai số hạng \(F_i, F_j\) của dãy (hai số hạng được phép trùng nhau, tức \(i = j\)) sao cho \(F_i \cdot F_j = x\) hay không.
Input
- Dòng đầu chứa số nguyên \(t\) - số lượng số cần xét.
- \(t\) dòng tiếp theo, mỗi dòng chứa một số nguyên \(x\).
Output
In ra \(t\) dòng. Ở dòng thứ \(i\) in YES nếu \(x\) thứ \(i\) biểu diễn được dưới dạng tích hai số Fibonacci, ngược lại in NO.
Constraints
- \(1 \le t \le 100\)
- \(0 \le x \le 10^{15}\)
Sample Input
3
15
0
14
Sample Output
YES
YES
NO
Explanation
\(15 = 3 \cdot 5\) và \(0 = 0 \cdot 0\) nên đều là YES. Số \(14\) không thể viết thành tích hai số Fibonacci nên là NO.
Bình luận
Đăng nhập để bình luận
Chưa có bình luận nào.