Hình vuông

Xem dạng PDF

Gửi bài giải

Điểm: 5,00
Giới hạn thời gian: 2.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C++

Trò chơi tìm nhanh số hình vuông trong một bảng gồm ~n~ dòng và ~m~ cột.

Ví dụ, trong bảng ~3~ x ~5~ cột có ~15~ hình vuông với cạnh là ~1~, ~8~ hình vuông với cạnh là ~2~ và ~3~ hình vuông với cạnh là ~3~. Tổng số hình vuông phân biệt trong bảng ~3~ x ~5~ là ~15+8+3=26~.

Cũng có thể phát biểu trò chơi ngược lại, đó là tìm tất cả các cặp số ~n~ và ~m~ thỏa mãn, có đúng ~x~ hình vuông phân biệt nằm trong bảng gồm ~n~ dòng và ~m~ cột.

Input

  • Dòng đầu tiên là số nguyên ~x~ ~(1 ≤ x ≤ 10^{18})~, đó là số hình vuông nằm bên trong bảng

Output

  • Dòng đầu tiên đưa ra số nguyên ~k~ là số bảng có đúng ~x~ hình vuông phân biệt nằm bên trong.
  • Các dòng sau, in ra ~k~ cặp số nguyên mô tả về bảng. In ra cặp số theo thứ tự tăng dần của ~n~, và trong trường hợp ~n~ bằng nhau, in theo thứ tự tăng dần của ~m~.

Ví dụ

Sample Input 1
26
Sample Output 1
6
1 26 
2 9
3 5
5 3 
9 2
26 1
Sample Input 2
2
Sample Output 2
2
1 2 
2 1
Sample Input 3
8
Sample Output 3
4
1 8
2 3
3 2
8 1

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.