Powinieneś napisać program lub funkcję, która wypisuje lub zwraca jak najwięcej rozdziału I Małego Księcia . Twój program lub funkcja musi być blokiem kodu M-N-N zawierającym tylko drukowane znaki ascii (punkt kodowy od 32 do 126) i znaki nowej linii na końcu każdego wiersza.
Możesz użyć maksymalnie 26 wybranych znaków spośród 96 drukowanych znaków ascii (i nowych linii na końcu wierszy).
W każdym rzędzie i kolumnie każda postać musi być odrębna, podobnie jak puzzle sudoku, tzn. Nie może być litery w rzędzie lub kolumnie dwa razy.
Prawidłowe przykład blok kodu o M = 4, N = 3i alphabet = {a,b,c,d,/,*}:
abcd
bcd*
*/ac
Szczegóły kodu
- Możesz wybrać kształt swojego bloku kodu (tj.
MIN). - Blok musi być całkowicie wypełniony znakami, tzn. Każdy wiersz musi mieć tę samą długość.
- Końcowy znak nowej linii na końcu ostatniego wiersza jest opcjonalny.
- Jak napisano powyżej w każdym wierszu i kolumnie, każdy znak musi być odrębny.
Dane wyjściowe
- Powinieneś wydrukować lub zwrócić prefiks rozdziału I Księcia Małego bez żadnych dodatkowych wyników.
- Jeśli dojdziesz do nowego wiersza w tekście, możesz przedstawić go jako dowolny popularny wariant (\ r, \ n, \ r \ n), ale użyj tylko jednego z nich i policz go jako 1 bajt do wyniku.
- Dodatkowy znak nowej linii jest opcjonalny.
Twój wynik to długość tekstu wyjściowego z wyłączeniem dodatkowego nowego wiersza, jeśli jest obecny. Wyższy wynik jest lepszy.
Przykładowa odpowiedź
##Python3, score = 6
alphabet = `print('O\ce w)#X` (alphabet element count = 16)
print('O\
nce w')#X
Możesz sprawdzić poprawność swojego kodu za pomocą tego programu Python 3 (ideone) lub programu CJam (online) dostarczonego przez @ MartinBüttner.