Time limit: 0.1s
Memory limit: 128MB
Input: pcp.in
Output: pcp.out
Se consideră un număr natural nenul .
Cerință
Să se determine toate pătratele perfecte distincte care se obțin prin permutarea cifrelor numărului .
Exemple:
- Pentru prin permutarea cifrelor sale se obțin numerele , , , , , din care 3 sunt pătrate perfecte: si .
- Pentru prin permutarea cifrelor sale se obțin numerele , , , , , , , , , , , din care 2 sunt pătrate perfecte: .
Date de intrare
Fișierul de intrare conține pe primul rând numărul natural .
Date de ieșire
Fișierul de ieșire va conține pe prima linie numărul reprezentând numărul de pătrate perfecte care se pot obține prin permutarea cifrelor numărul si apoi următoarele linii cele pătrate perfecte în ordine crescatoare.
Dacă nu există niciun pătrat perfect ce se poate obține prin permutarea cifrelor lui se va afișa mesajul nu exista
Restricții
- Cifrele de 0 care prin permutarea cifrelor lui N apar la începutul unui număr, nu se iau în considerare.
Subtask 1 (20 puncte)
Subtask 2 (68 puncte)
Subtask 3 (12 puncte)
Exemplul 1
pcp.in
691
pcp.out
3
169
196
961
Exemplul 2
pcp.in
1044
pcp.out
2
144
441
Exemplul 3
pcp.in
202050
pcp.out
4
225
2025
22500
202500
Exemplul 4
pcp.in
2023
pcp.out
nu exista