Entrada:
una lista / matriz de enteros para los que cada elemento está en el rango de 2-36
.
Salida:
La suma de los enteros (como base 10), donde cada entero siguiente está en la base del valor anterior (comenzando con una base regular 10).
Ejemplo:
Digamos que tenemos una entrada como esta: [4, 12, 34, 20, 14, 6, 25, 13, 33]
Luego tenemos una suma como esta:
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
Explicación de la base matemática:
consideré asumir que todos saben cómo funciona la base, pero de todos modos daré un breve ejemplo de cómo funciona, por si acaso. Tomemos34 in base-12
por ejemplo, ¿cómo llegamos40
?
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
Aquí hay quizás una calculadora útil.
Reglas de desafío:
- El tamaño de la matriz estará en un rango razonable (como
1-100
/ ver casos de prueba). - Los casos de prueba nunca contendrán números enteros cuyo valor actual no sea válido para su base anterior (es decir, nunca tendrá algo como
19 in base-6
o6 in base-6
, porque base-6 solo contiene los dígitos0-5
). - Puede tomar la entrada de la forma que desee. Puede ser como una matriz de int, como una cadena separada por comas / espacios, etc. Su llamada. (También se le permite tomar la matriz int invertida, lo que podría ser útil para los lenguajes de programación basados en pila).
Reglas generales:
- Este es el código de golf , por lo que la respuesta más corta en bytes gana.
No permita que los idiomas de código de golf lo desanimen a publicar respuestas con idiomas que no sean de golf. Trate de encontrar una respuesta lo más breve posible para cualquier lenguaje de programación. - Se aplican reglas estándar para su respuesta, por lo que puede usar STDIN / STDOUT, funciones / método con los parámetros adecuados, programas completos. Tu llamada.
- Las lagunas predeterminadas están prohibidas.
- Si es posible, agregue un enlace con una prueba para su código.
- Además, agregue una explicación si es necesario.
Casos de prueba:
[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