Wyzwanie
Wszyscy wiemy o normalnych choinkach - ale co powiesz na odwróconą choinkę ! To dość łatwe, świąteczne wyzwanie. Celem tego wyzwania jest uczynienie mnie do góry nogami choinką ASCII. Oto zasady tego wyzwania:
- Zaakceptuj nieparzystą liczbę całkowitą dodatnią. Możesz założyć, że zawsze będzie pomiędzy
7i51. Podstawa drzewa będzie złożona z postaci:
___ \ / |Wierzchołek drzewa (gwiazda) będzie składał się z jednego
*.Każda linia drzewa zostanie zbudowana w formacie, w
<?>którym?jest dowolna liczba-s. Na przykład, jeśli tworzysz linię długości5, linia powinna być<--->. Lub jeśli tworzysz linię długości8, linia powinna być<------>.Oto, jak należy zbudować ciało drzewa:
Weź liczbę nieparzystą
npodaną jako dane wejściowe i utwórz linię drzewa o tej długości.Odjąć
4odni utworzyć linię drzewa tej długości.Odjąć
2odni utworzyć linię drzewa tej długości.Zmniejszenie
nprzez2. Następnie, chyba żenjest równy5, wróć do kroku 2.
Baza (patrz krok 2.) gwiazda (patrz krok 3.) i każda linia drzewa (patrz kroki 4. i 5.) powinny być wyśrodkowane przy użyciu oryginału liczby nieparzystej (patrz krok 1.) jako maksimum szerokość.
Przykłady / przypadki testowe
odd number inputed: 7
___
\ /
|
<-----> line length -> 7
<-> line length -> 7 - 4 = 3
<---> line length -> 7 - 2 = 5
*
odd number inputed: 13
___
\ /
|
<-----------> line length -> 13
<-------> line length -> 13 - 4 = 9
<---------> line length -> 13 - 2 = 11
<-----> line length -> 11 - 4 = 7
<-------> line length -> 11 - 2 = 9
<---> line length -> 9 - 4 = 5
<-----> line length -> 9 - 2 = 7
<-> line length -> 7 - 4 = 3
<---> line length -> 7 - 2 = 5
*
odd number inputed: 9
___
\ /
|
<-------> line length -> 9
<---> line length -> 9 - 4 = 5
<-----> line length -> 9 - 2 = 7
<-> line length -> 7 - 4 = 3
<---> line length -> 7 - 2 = 5
*
odd number inputed: 17
___
\ /
|
<---------------> line length -> 17
<-----------> line length -> 17 - 4 = 13
<-------------> line length -> 17 - 2 = 15
<---------> line length -> 15 - 4 = 11
<-----------> line length -> 15 - 2 = 13
<-------> line length -> 13 - 4 = 9
<---------> line length -> 13 - 2 = 11
<-----> line length -> 11 - 4 = 7
<-------> line length -> 11 - 2 = 9
<---> line length -> 9 - 4 = 5
<-----> line length -> 9 - 2 = 7
<-> line length -> 7 - 4 = 3
<---> line length -> 7 - 2 = 5
*
Zasady
- Obowiązują standardowe luki .
- To jest golf golfowy , więc wygrywa najkrótsza odpowiedź w bajtach!
repeat the above steps until the odd number minus 2 equals 5- na pierwszym wejściu liczba nieparzysta to 7, a 7-2 = 5, dlatego drzewo powinno się natychmiast zakończyć (wiem, co masz na myśli, ale wymaga przeformułowania)
7minimalną wartością wejściową, najpierw należy utworzyć trzy linie drzewa (pod-kroki .1.1, .1.2, .1.3), a następnie odjąć 2od liczby nieparzystej i sprawdzić, czy jest ona równa 5. Instrukcja sprawdzenia, czy „liczba nieparzysta minus 2 równa się 5” znajduje się na końcu, pozostałe trzy kroki należy wykonać w pierwszej kolejności. Ale odpowiedź na twój pierwszy komentarz byłaby w porządku.
7dane wejściowe, czy możesz je zaakceptować 4, jak w czwartej liczbie nieparzystej (lub 3czy jest to indeks 0).