Ваша програма повинна взяти вхід ( n
з метою опису) та вивести всі перестановки числа, яке розраховується n
довгими цифрами без повторюваних цифр, де кожна з цифр, що передують, включаючи її індекс, ділиться на місце на число, яке вона падає .
Про магічні числа ви можете прочитати тут .
Правила:
1 <= n <= 10
- Жодні цифри не можуть повторюватися
- Попередній 0 повинен бути присутнім (якщо застосовується)
- Перша-
x
й цифра числа (починаючи з першого символу як 1) повинна ділитися наx
, тобто в30685
,3
ділиться на 1,30
ділиться на 2,306
ділиться на 3,3068
ділиться на 4, ділиться на 4, і30685
ділиться на 5 . - Програма повинна взяти ціле число як вхідне (через командний рядок, як аргумент функції тощо) та надрукувати всі перестановки, які відповідають правилам.
- Вихідні дані повинні бути розділені одним або більше символом пробілу
- Перестановки можуть починатися і з нуля (тому вони технічно не магічні числа).
- Порядок виходу не має значення
- Вам не потрібно обробляти несподіване введення
- Найменше символів у байтах виграє
Приклади
Дано 1:
0
1
2
3
4
5
6
7
8
9
Дано 2:
02
04
06
08
10
12
14
16
18
20
24
26
28
30
32
34
36
38
40
42
46
48
50
52
54
56
58
60
62
64
68
70
72
74
76
78
80
82
84
86
90
92
94
96
98
Дано 10:
3816547290
Заслуга Pizza Hut та John H. Conway за оригінальну головоломку (Варіант A). Дякуємо @Mego та @ sp3000 за їх посилання .