Program Anda harus mengambil input ( n
untuk tujuan deskripsi) dan mengeluarkan semua permutasi dari angka yang n
panjang digit tanpa digit berulang, di mana masing-masing digit sebelum dan termasuk indeksnya dapat dibagi dengan tempat di nomor yang jatuh. .
Anda dapat membaca tentang angka ajaib di sini .
Aturan:
1 <= n <= 10
- Tidak ada digit yang dapat diulang
- 0 di depan harus ada (jika ada)
x
Digit ke -1 dari angka (dimulai dengan karakter pertama sebagai 1) harus dapat dibagi denganx
, yaitu dalam30685
,3
dapat dibagi dengan 1,30
dapat dibagi dengan 2,306
dapat dibagi dengan 3,3068
dapat dibagi dengan 4, dan dapat dibagi dengan 4, dan30685
dapat dibagi dengan 5 .- Program harus mengambil integer sebagai input (melalui baris perintah, sebagai argumen fungsi, dll.) Dan mencetak semua permutasi yang memenuhi aturan.
- Output harus dipisahkan oleh 1 atau lebih karakter spasi
- Permutasi dapat dimulai dan dengan nol (jadi itu bukan angka ajaib secara teknis ).
- Urutan output tidak masalah
- Anda tidak perlu menangani input yang tidak terduga
- Karakter paling tidak dalam bytes menang
Contohnya
Diberikan 1:
0
1
2
3
4
5
6
7
8
9
Diberikan 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
Diberikan 10:
3816547290
Kredit ke Pizza Hut & John H. Conway untuk teka-teki asli (Opsi A). Terima kasih kepada @Mego dan @ sp3000 untuk tautan mereka .