Tulis sebuah program atau fungsi yang, diberi bilangan bulat n, membangun array dengan ndimensi npanjang, di mana setiap elemen merupakan pengidentifikasi koordinatnya sendiri. Yaitu, mulai dengan satu array, isi dengan narray, di mana masing-masing berisi nlebih banyak array, hingga kedalaman n-1. Elemen-elemen dari array terdalam adalah koordinat yang menggambarkan di mana mereka berada dalam array penuh.
Beberapa contoh kalau-kalau penjelasan saya membingungkan.
n = 1
["1"]
n = 2
[
["11", "12"],
["21", "22"]
]
n = 3
[
[
["111","112","113"],
["121","122","123"],
["131","132","133"]
],
[
["211","212","213"],
["221","222","223"],
["231","232","233"]
],
[
["311","312","313"],
["321","322","323"],
["331","332","333"]
]
]
Di sini, "321" berarti itu adalah elemen ke-1 dari elemen ke-2 dari array ke-3.
Aturan:
- Koordinat dan dimensi (
n) dapat diindeks 0 atau 1 - Anda dapat mengasumsikan
nsatu digit, di bawah 10 untuk kedua opsi pengindeksan untuk mencegah output yang ambigu - IO fleksibel.
- Khususnya, koordinat dapat berupa array, string, dll. Asalkan jelas. "321" => [3,2,1]
- Output dapat berupa bilangan bulat di basis 10 dengan atau tanpa nol di depan.
- Koordinat dapat dalam urutan terbalik jika Anda inginkan, asalkan konsisten. "321" => "123"
- Output tidak harus berupa struktur array dalam bahasa Anda. Selama ada penanda yang jelas berbeda untuk awal array, akhir array dan untuk memisahkan elemen.
- Output untuk
n=1hanya bisa 1 - Jika output Anda tidak khas, pastikan untuk menjelaskan formatnya.
- Ini adalah kode-golf sehingga solusi terpendek dalam setiap bahasa menang!
data L a = L [L a] | E a.
Int -> [String]atau Int -> [[String]]dan sebagainya, tergantung pada apa inputnya