Twoim zadaniem jest przetłumaczenie 103-gładkiej liczby na angielskie słowo, korzystając z metody opisanej poniżej.
W jaki sposób?
- Wygeneruj listę czynników pierwszych (z powtórzeniami) liczby wejściowej.
- Sortuj listę:
- Jeśli 2 nie jest jednym z głównych czynników, posortuj listę w porządku rosnącym.
- Jeśli 2 jest jednym z głównych czynników, usuń go z listy i posortuj pozostałe czynniki w malejącej kolejności.
Przetłumacz każdy czynnik na literę, korzystając z poniższej tabeli:
3 = S 13 = L 29 = X 43 = O 61 = Z 79 = H 101 = K 5 = P 17 = Q 31 = N 47 = R 67 = T 83 = V 103 = Y 7 = M 19 = U 37 = C 53 = A 71 = E 89 = D 11 = F 23 = I 41 = W 59 = G 73 = J 97 = B
Uwaga : Ta tabela została zbudowana empirycznie, aby zmaksymalizować liczbę możliwych słów. Dla ciekawskich, oto lista 2187 słów, które można zakodować w ten sposób (może obejmować niegrzeczny język). Zdecydowanie nie jest optymalna, ale wystarcza do tego wyzwania.
Przykłady
Przykład 1: 579085261 (rosnąco)
- Czynniki pierwsze to [37, 47, 53, 61, 103] .
- 2 nie jest czynnikiem głównym, dlatego lista jest posortowana w porządku rosnącym.
- 37 = C, 47 = R itp. Wyjście to „SZALONY”.
Przykład 2: 725582 (malejąco)
- Czynniki pierwsze to [2, 11, 13, 43, 59] .
- 2 jest czynnikiem głównym, dlatego usuwamy go i sortujemy listę w kolejności malejącej, co daje:
[59, 43, 13, 11] . - 59 = G, 43 = O itp. Wyjście to „GOLF”.
Przykład 3: 10757494 (z powtarzanym współczynnikiem)
- Czynniki pierwsze to [2, 11, 71, 71, 97] .
- 2 jest czynnikiem głównym, dlatego usuwamy go i sortujemy listę w kolejności malejącej, co daje:
[97, 71, 71, 11] . - 97 = B, 71 = E, 11 = F. Wyjście to „WOŁOWINA”.
Wyjaśnienia i zasady
- Gwarantowana liczba wejściowa to 103-gładka i podzielna przez 2 najwyżej raz.
- Z definicji liczba gładka jest liczbą całkowitą dodatnią .
- Dane wejściowe i wyjściowe mogą być obsługiwane w dowolnym rozsądnym formacie. Dane wyjściowe mogą być pisane małymi lub dużymi literami. Dopuszczalne są końcowe białe znaki. Wiodące białe znaki nie są.
- Jeśli twój program / funkcja nie obsługuje dużych danych wejściowych, podaj to w odpowiedzi.
- To jest kod golfowy, więc wygrywa najkrótsza odpowiedź w bajtach.
Przypadki testowe
34874 --> ARM
483254 --> BAR
353722 --> EAR
494302 --> EGG
39061 --> FAT
6479 --> FUN
60421 --> ICE
54166 --> JAM
48911474 --> BETA
2510942 --> BOOM
2303854 --> DOOM
844261 --> FIRE
1606801 --> MAZE
1110085 --> PAGE
5212974 --> BALLS
67892046 --> BEANS
885396199 --> CREEK
67401037 --> FUNKY
27762173 --> QUICK
1238440506 --> ARROWS
33045832681 --> CRAGGY
1362714005 --> PIRATE
137302698 --> TROLLS
358310128062 --> BEGGARS
40255151586 --> DETAILS
164633248153 --> FIXATED
621172442227 --> UNRATED
2467812606 --> VACUUMS
86385078330 --> GROWNUPS
26607531423091 --> UNWORTHY
<=103
... Twój wynik to PIRATE MAZE
lub DOOM VACUUMS
...
Ò
na579085261
, czuję się jak <s> Emigna </ s> Adnan został już rozpoczęty.