AT_abc439_c [ABC439C] 2026
Description
正整数 $ n $ が次の条件を満たす時、 $ n $ を **良い整数** と呼びます。
- $ 0 \lt x \lt y $ かつ $ x^2+y^2=n $ を満たす整数の組 $ (x,y) $ がただ $ 1 $ つ存在する。
例えば $ n=2026 $ とすると、 $ 0 \lt x \lt y $ かつ $ x^2+y^2=n $ を満たす整数の組は $ (x,y)=(1,45) $ しか存在しないことが確認できます。よって $ 2026 $ は良い整数です。
正整数 $ N $ が与えられます。 $ N $ 以下の良い整数を全て列挙してください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $
Output Format
$ N $ 以下の良い整数が $ k $ 個あり、それらを昇順に並べた列が $ (a_1, a_2, \dots, a_k) $ であるとする。この時、以下の形式で答えを出力せよ。( $ k=0 $ である場合は $ 2 $ 行目は空行として出力せよ。)
> $ k $ $ a_1 $ $ a_2 $ $ \dots $ $ a_k $
Explanation/Hint
### Sample Explanation 1
$ 0 \lt x \lt y $ かつ $ x^2+y^2=5 $ を満たす整数の組は $ (x,y)=(1,2) $ しか存在しないので $ 5 $ は良い整数です。
$ 0 \lt x \lt y $ かつ $ x^2+y^2=10 $ を満たす整数の組は $ (x,y)=(1,3) $ しか存在しないので $ 10 $ は良い整数です。
$ N $ 以下の良い整数はこの $ 2 $ 個のみです。
### Constraints
- $ 1 \leq N \leq 10^7 $
- $ N $ は整数