Bir tamsayı verilen , her boyutun kendi koordinatlarının bir tanımlayıcısı olduğu , uzunluk boyutlarına nsahip bir dizi oluşturan bir program veya işlev yazın . Yani, bir dizi ile başlayarak , her birinin daha fazla dizi içerdiği bir derinliğe kadar dizilerle doldurun . En derin dizilerin elemanları, tam dizide nerede olduklarını açıklayan koordinatlardır.nnnnn-1
Açıklamam durumunda bazı örnekler kafa karıştırıcıydı.
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"]
]
]
Burada "321", 3. dizinin 2. öğesinin 1. elemanı olduğu anlamına gelir.
Kurallar:
- Koordinatlar ve boyut (
n), 0 veya 1 dizinlenmiş olabilir nBelirsiz çıktıları önlemek için her iki indeksleme seçeneğinde 10 rakamın altında bir rakam olduğunu varsayalım.- IO esnek.
- Özellikle, koordinatlar, net oldukları sürece diziler, dizeler vs. olabilir. "321" => [3,2,1]
- Çıktı, taban 10'daki baş sıfıra sahip olan ya da olmayan tam sayılar olabilir.
- İsterseniz, tutarlı olduğu sürece koordinatlar ters sırada olabilir. "321" => "123"
- Çıktı dilinizde mutlaka bir dizi yapısı olmak zorunda değildir. Bir dizinin başlangıcı, bir dizinin sonu ve elemanları ayırmak için belirgin işaretler olduğu sürece.
- Çıktı
n=1sadece 1 olabilir - Çıktınız atipikse, biçimi açıkladığınızdan emin olun.
- Bu kod golf yani her dilde en kısa çözüm kazanıyor!
data L a = L [L a] | E a.
Int -> [String]veya Int -> [[String]]benzeri olabilir.