Pojęcie
Zapamiętywanie liczb może być trudne. Zapamiętywanie słowa może być łatwiejsze. Aby zapamiętać duże liczby, stworzyłem sposób ich wymawiania w sposób przypominający leetspeak.
Zasady
Każda cyfra jest najpierw zastępowana odpowiednią literą:
0 => O
1 => I
2 => R
3 => E
4 => A
5 => S
6 => G
7 => T
8 => B
9 => P
Po zamianie wykonywane są dwie dodatkowe czynności w celu poprawy wymowy:
Pomiędzy dwiema spółgłoskami
Udodaje się a.Pomiędzy dwiema samogłoskami
Ndodaje się a.
Przykłady / przypadki testowe
512431 => SIRANENI
834677081 => BENAGUTUTOBI
3141592 => ENINANISUPUR
1234567890 => IRENASUGUTUBUPO
6164817 => GIGABIT
Co jest niemożliwe
- Litery i cyfry mieszane w tym samym słowie
- Dwie kolejne spółgłoski lub dwie kolejne samogłoski
- Listy, których nie ma na powyższej liście
- Inne postaci
Zasady
Celem tego golfa jest stworzenie dwukierunkowego tłumacza tej koncepcji.
- Twój program musi najpierw zrozumieć sam, czy jest to tłumaczenie litery na cyfrę lub cyfrę na literę.
- Musi sprawdzić, czy wpis został poprawnie utworzony.
- Jeśli wszystko jest w porządku, wyświetl tłumaczenie.
- W przeciwnym razie wyświetl komunikat o błędzie, nic, zwróć wartość falsey lub awarii programu.
Detale
- Numer / ciąg wejściowy można wprowadzić w dowolnym formacie (standardowe, argument, ...)
- To jest golf golfowy , więc wygrywa najkrótsza odpowiedź.
- Standardowe luki są zabronione.
AB23; AEI; BB; Z; ACE; giga; !@#$; -123; itd. Ponadto, w oparciu o reguły sprawdzania poprawności, możemy przekonwertować 6164735732 => GIGATESTER, ale GIGATESTERspowoduje to fałszywą wartość z powodu ST(dwóch kolejnych reguł spółgłosek). Sposób, w jaki obecnie konfigurujesz wyzwanie, jego główną częścią jest walidacja zamiast konwersji. Nie przeszkadza mi to, ale w takim przypadku walidację należy zdefiniować nieco lepiej.
GIGATESTERbyćGIGATESUTER?