Problema
Ver original (inglés)La casilla 1 contiene un grano. Cada casilla posterior contiene el doble de granos que la anterior. Devuelve tanto la cantidad en la casilla solicitada como el total en las casillas 1 a 64. Escribe cada cantidad como texto decimal, ya que el total del tablero es demasiado grande para un entero con signo de 64 bits.
Implementa chessboard_grains(square).
Entrada
square: La casilla solicitada, numerada desde 1.
Salida
Devuelve dos cadenas decimales: [cantidad en la casilla solicitada, total en todas las 64 casillas].
Restricciones
1 ≤ square ≤ 64. Las cadenas de salida contienen solo dígitos decimales, sin comas, espacios ni ceros a la izquierda.
Ejemplos
Entrada:
square = 6
Salida esperada:
expected = ["32", "18446744073709551615"]
Entrada:
long long square = 6;
Salida esperada:
std::vector<std::string> expected = {"32", "18446744073709551615"};
Entrada:
long square = 6;
Salida esperada:
string[] expected = new string[] {"32", "18446744073709551615"};
Explicación
Las primeras seis cantidades son 1, 2, 4, 8, 16, 32. El total del tablero es 1 + 2 + … + 2⁶³ = 2⁶⁴ − 1.
Entrada:
square = 1
Salida esperada:
expected = ["1", "18446744073709551615"]
Entrada:
long long square = 1;
Salida esperada:
std::vector<std::string> expected = {"1", "18446744073709551615"};
Entrada:
long square = 1;
Salida esperada:
string[] expected = new string[] {"1", "18446744073709551615"};
Explicación
La primera casilla contiene 1 grano. La segunda salida siempre se refiere a las 64 casillas, no solo al prefijo solicitado.
Referencias
Este reto está adaptado para CodeUtility. Sigue el enunciado y las restricciones indicadas arriba.