2599.Spongebob and Squares

Time Limit: 1s Memory Limit: 256MB

Spongebob is already tired trying to reason his weird actions and calculations, so he simply asked you to find all pairs of n and m, such that there are exactly x distinct squares in the table consisting of n rows and m columns. For example, in a 3 \times 5 table there are 15 squares with side one, 8 squares with side two and 3 squares with side three. The total number of distinct squares in a 3 \times 5 table is 15+8+3=26.

Input Format(From the terminal/stdin)

Input The first line of the input contains a single integer x (1 \le x \le 1018)- the number of squares inside the tables Spongebob is interested in.

Output Format(To the terminal/stdout)

Output First print a single integer k- the number of tables with exactly x distinct squares inside.Then print k pairs of integers describing the tables. Print the pairs in the order of increasing n, and in case of equality- in the order of increasing m.

Sample Input 1

Copy
26
  \n

Sample Output 1

Copy
6
1 26
2 9
3 5
5 3
9 2
26 1
 \n
 ·  \n
 · \n
 · \n
 · \n
 · \n
  · \n

Sample Input 2

Copy
2
 \n

Sample Output 2

Copy
2
1 2
2 1
 \n
 · \n
 · \n

Sample Input 3

Copy
8
 \n

Sample Output 3

Copy
4
1 8
2 3
3 2
8 1
 \n
 · \n
 · \n
 · \n
 · \n

Hints

In a 1 \times 2 table there are 2 1 \times 1 squares. So, 2 distinct squares in total. 2599_1.png In a 2 \times 3 table there are 6 1 \times 1 squares and 2 2 \times 2 squares. That is equal to 8 squares in total. 2599_2.png

Submit

请先 登录

© 2025 FAQs