Bilgisayar bilimi geleneğinde vardır bir ağaç, verilen konum kök üst ve en yaprakların alt kısmında. Yaprak düğümleri sayılarla etiketlenmiştir. Amacınız işaretli özel yaprağı almak -1
ve yeni kök olarak yukarı taşımaktır.
[3, [[16], -1], [4]] --> [[[[4], 3], [16]]]
Özel yaprağı tepeye döndürdüğünüzü ve ağacın geri kalanının ondan sarktığını hayal edebilirsiniz. Tüm dalların doğru soldan sağa sırasını elde etmek için ağacı döndürürken düzlemde tutmak.
Yeni ağaç, orijinal ağacın tüm yaprakları dışında -1
.
Giriş:
Bir yaprağı hariç, yaprakları belirgin pozitif tamsayılar olan bir ağaç -1
. Ağacın kökünde en az iki dal çıkacaktır.
Giriş, [3, [[16], -1], [[4]]]
dize temsili gibi iç içe bir liste olarak verilir . Sınırlayıcılar isteğe bağlıdır ve size bağlıdır, ancak bitişik sayıların ayrılması gerekir.
Çıktı:
Ters çevrilmiş ağacı girişinizle aynı formatta yazdırın veya yazdırın. Liste girişlerinin sırası doğru olmalıdır. Yerinde değişiklik yapılması iyidir.
Giriş / çıktınız bir veri tipiyse, varsayılan olarak gerekli formatta yazdırılmış olmalıdır. Temel olarak görevi sizin için yapan yerleşiklere izin verilmez.
Test senaryoları:
>> [3, [[16], -1], [4]]
[[[[4], 3], [16]]]
>> [2, -1]
[[2]]
>> [44, -1, 12]
[[12, 44]]
>> [[[[-1]]], [[[[4]]]]]
[[[[[[[[[4]]]]]]]]]
>> [[1, 2, 3], [4, -1, 6], [7, 8, 9]]
[[6, [[7, 8, 9], [1, 2, 3]], 4]]
>> [9, [8, [7, [6, -1, 4], 3], 2], 1]
[[4, [3, [2, [1, 9], 8], 7], 6]]
4
Daha onun etrafında iki parantez vardır3
, ancak yalnızca 1 kat daha derin diyagram olarak.