Dane wejściowe:
lista / tablica liczb całkowitych, dla których każdy element należy do zakresu 2-36
.
Dane wyjściowe:
Suma liczb całkowitych (jako podstawa 10), gdzie każda następna liczba całkowita znajduje się w podstawie poprzedniej wartości (zaczynając od zwykłej podstawy 10).
Przykład:
załóżmy, że mamy dane wejściowe takie jak to: [4, 12, 34, 20, 14, 6, 25, 13, 33]
Mamy więc taką sumę:
4 (4 in base-10) +
6 (12 in base-4 ) +
40 (34 in base-12) +
68 (20 in base-34) +
24 (14 in base-20) +
6 (6 in base-14) +
17 (25 in base-6 ) +
28 (13 in base-26) +
42 (33 in base-13)
= 235
Wyjaśnienie podstawy matematycznej:
Rozważyłem założenie, że każdy wie, jak działa podstawa, ale podam krótki przykład, jak to działa, na wszelki wypadek. Weźmy34 in base-12
na przykład, skąd mamy40
?
1-34 in regular base-10:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34
So, from 1 to 34 is 34 steps in base-10
1-34 in base-12:
1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 2A, 2B, 30, 31, 32, 33, 34
So, from 1 to 34 is 40 steps in base-12
Oto być może przydatny kalkulator.
Zasady konkursu:
- Rozmiar tablicy będzie w rozsądnym zakresie (jak
1-100
/ patrz przypadki testowe). - Przypadki testowe nigdy nie będą zawierały liczb całkowitych, których bieżąca wartość jest niepoprawna dla poprzedniej podstawy (tzn. Nigdy nie będziesz mieć czegoś takiego jak
19 in base-6
lub6 in base-6
, ponieważ podstawa-6 zawiera tylko cyfry0-5
). - Możesz wziąć dane wejściowe w dowolny sposób. Może być jako tablica int, jako ciąg oddzielony przecinkami / spacjami itp. Twoje wywołanie. (Możesz także wziąć odwróconą tablicę int, co może być przydatne w przypadku języków programowania opartych na stosie).
Główne zasady:
- To jest golf golfowy , więc wygrywa najkrótsza odpowiedź w bajtach.
Nie pozwól, aby języki kod-golfowe zniechęcały Cię do zamieszczania odpowiedzi w językach innych niż golfowe. Spróbuj znaleźć możliwie najkrótszą odpowiedź dla dowolnego języka programowania. - Do odpowiedzi odnoszą się standardowe reguły , więc możesz używać STDIN / STDOUT, funkcji / metody z odpowiednimi parametrami, pełnych programów. Twoja decyzja.
- Domyślne luki są zabronione.
- Jeśli to możliwe, dodaj link z testem swojego kodu.
- W razie potrzeby dodaj również wyjaśnienie.
Przypadki testowe:
[4, 12, 34, 20, 14, 6, 25, 13, 33] -> 235
4+ 6+ 40+ 68+ 24+ 6+ 17+ 28+ 42
[5, 14, 2, 11, 30, 18] -> 90
5+ 9+ 2+ 3+ 33+ 38
[12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 12, 2, 11, 3, 10, 2, 10] -> 98
12+ 13+ 11+ 9+ 8+ 7+ 6+ 5+ 4+ 3+ 5+ 2+ 3+ 3+ 3+ 2+ 2
[36, 36] -> 150
36+ 114