Cel, powód
Chodzi o to, aby podać kod niezbędny do odwzorowania 32-bitowej liczby całkowitej na / z wymawianego słowa o długości maksymalnie 9 znaków. Może to być przydatne na przykład w celu ułatwienia zapamiętania numeru seryjnego lub wpisania formularza.
Wymagana jest zarówno metoda translacji liczby całkowitej na odpowiednie słowo, jak i translacja słowa z powrotem na odpowiednią liczbę całkowitą.
Zasady
Pomiędzy liczbami całkowitymi a słowami musi istnieć odwzorowanie jeden na jeden, a cały zestaw 32-bitowych liczb całkowitych (lub, inaczej mówiąc, dowolna liczba całkowita od 0 do 4294967295) musi być odwzorowalna. Chociaż oczywiście nie wszystkie słowa będą znaczące, a wprowadzanie słów, które nie są odwzorowane na liczbę całkowitą, może mieć nieokreślone zachowanie.
Możesz swobodnie decydować, który zestaw wyrazów „wymawialnych” ma znaczenie, i jak wykonać mapowanie, ale słowa muszą co najmniej przestrzegać następujących zasad:
- Jako znaki należy używać tylko podstawowych 26 liter (A ... Z). Akcenty, obudowa itp. Nie powinny być używane do rozszerzania możliwych kombinacji.
- Maksymalnie 9 znaków na słowo.
- dwie spółgłosek (BCDFGHJKLMNPQRSTVWXZ - 20 możliwości) nie powinny być umieszczone obok siebie (muszą być otoczone samogłosek).
- dwie samogłoski (AEIOUY - 6 możliwości) nie powinny być umieszczane obok siebie (muszą być otoczone spółgłosek).
Uwaga: najprostszy schemat, w którym wszystkie słowa są konstruowane jako CVCVCVCVC
( C
spółgłoska i V
samogłoska) daje 4147200000 kombinacji, a 32-bitowa liczba całkowita ma 4294967296 możliwych wartości, więc to nie wystarczy. Musisz zwiększyć liczbę kombinacji, dopuszczając krótsze słowa lub też dopuszczając VCVCVCVCV
kombinacje.
Obowiązują inne standardowe zasady, a standardowe luki są zabronione.
Wejścia wyjścia
Do każdego zgłoszenia należy podać dwa fragmenty kodu:
- Taki, który przyjmuje liczbę całkowitą jako argument / dane wejściowe i zwraca / drukuje odpowiednie słowo
- Taki, który przyjmuje słowo jako argument / input i zwraca / wypisuje odpowiednią liczbę całkowitą
Alternatywnie możesz przesłać pojedynczy fragment kodu, który obsługuje obie operacje:
- Gdy podano liczbę całkowitą jako dane wejściowe, wyprowadza odpowiednie słowo
- Gdy podano ciąg jako dane wejściowe, wypisuje odpowiednią liczbę całkowitą
Warunki wygranej
To jest golfowy kod , odpowiedź, która ma najmniej bajtów (przy sumowaniu obu fragmentów kodu, dla rozwiązań wybierających oddzielne fragmenty kodu) wygrywa.