Twój program musi przyjąć dane wejściowe ( ndo celów opisu) i wypisać wszystkie permutacje liczby, która jest ndługa, bez powtarzających się cyfr, gdzie każda z cyfr poprzedzających indeks wraz z indeksem jest podzielna przez miejsce w liczbie, w której się znajduje .
Możesz przeczytać o magicznych liczbach tutaj .
Zasady:
1 <= n <= 10- Żadne cyfry nie mogą się powtarzać
- Wiodące 0 musi być obecne (jeśli dotyczy)
- Od 1 do 3
xcyfry liczby (zaczynając od pierwszego znaku jako 1) muszą być podzielne przezx, tj. W30685,3jest podzielne przez 1,30jest podzielne przez 2,306jest podzielne przez 3,3068jest podzielne przez 4 i30685jest podzielne przez 5 . - Program musi przyjmować liczbę całkowitą jako dane wejściowe (poprzez wiersz poleceń, jako argument funkcji itp.) I wypisać wszystkie kombinacje spełniające reguły.
- Dane wyjściowe muszą być oddzielone co najmniej 1 spacją
- Permutacje mogą zaczynać się od zera (więc nie są to technicznie magiczne liczby).
- Kolejność produkcji nie ma znaczenia
- Zdajesz nie trzeba obsłużyć nieoczekiwane wejście
- Wygrywa najmniej znaków w bajtach
Przykłady
Biorąc pod uwagę 1:
0
1
2
3
4
5
6
7
8
9
Biorąc pod uwagę 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
Biorąc pod uwagę 10:
3816547290
Podziękowania dla Pizza Hut i Johna H. Conwaya za oryginalną układankę (Opcja A). Dzięki @Mego i @ sp3000 za ich linki .