Gửi bài giải
Điểm:
2,50 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
TRANNUM.INP
Output:
TRANNUM.OUT
Dạng bài
Ngôn ngữ cho phép
C, C++, C++ (Themis), Java, Pascal, Python, Scratch
Người ta định nghĩa, số nguyên dương ~n~ là "Số tam giác" khi và chỉ khi ~n~ biểu diễn được dưới dạng tổng của ~k~ số tự nhiên đầu tiên liên tiếp như sau:
~ n = 1 + 2 + 3 + \dots + k \quad ~ (với ~k~ là một số tự nhiên)
Yêu cầu:
Cho số nguyên dương ~S~, hãy kiểm tra xem ~S~ có thể phân tích thành tổng của hai "Số tam giác" hay không (hai số hạng không nhất thiết phải khác nhau).
Dữ liệu vào:
Cho trong tệp văn bản TRIANNUM.INP có cấu trúc như sau:
- Dòng 1: Ghi số nguyên dương ~T~ là số lượng bộ dữ liệu cần thực hiện.
- T dòng tiếp theo: Mỗi dòng ghi một số nguyên dương ~S~.
Dữ liệu ra:
Ghi ra tệp văn bản TRIANNUM.OUT theo cấu trúc:
- Dữ liệu ghi trên ~T~ dòng, mỗi dòng ghi kết quả tìm được tương ứng với mỗi bộ dữ liệu vào, nếu phân tích được thì ghi YES, ngược lại thì ghi NO.
Ví dụ:
Input: TRIANNUM.INP
2
256
512
Output: TRIANNUM.OUT
YES
NO
Ràng buộc:
- ~1 \leq T \leq 100~;
- ~1 \leq S \leq 10^9~.
Bình luận