Tu piramide
La pirámide que quiero que construyas está hecha completamente de cubos. Cuenta con 24 capas, y la N º capa de la parte superior contiene N 2 cubos dispuestos en una N por cuadrado N. La pirámide se ve así:
Para construir la pirámide, necesitará un suministro de cubos. Te dan 4900 cubos dispuestos en un cuadrado de 70 por 70 que se ve así:
(Bien, admito que la imagen del cuadrado es completamente innecesaria).
Como 1 2 + 2 2 + 3 2 + ... + 24 2 = 70 2 , tienes exactamente el número correcto de cubos para construir la pirámide. Todo lo que tienes que hacer es decirme a dónde debe ir cada cubo.
Tu tarea
Debe elegir una biyección arbitraria entre los cubos en el cuadrado y los cubos en la pirámide. (¡Sería bueno que tu respuesta dijera cuál de las 4900 diferentes biyecciones que estás usando!
Luego, escriba una función o programa que haga lo siguiente:
- Dada la ubicación de un cubo en el cuadrado 70 por 70 (como un par de coordenadas
(X,Y)), - Salida de su ubicación en la pirámide (como un triple de coordenadas
(A,B,C)).
Las coordenadas de entrada y salida pueden estar indexadas a 0 o indexadas a 1. Suponiendo que 1 indexado, su entrada (X,Y)será un par de enteros entre 1 y 70. Su salida (A,B,C)será un triple de enteros; Adebe ser la capa que cuenta desde la parte superior (entre 1 y 24) y (B,C)debe ser las coordenadas de ese cubo dentro de esa capa (entre 1 y A).
Por ejemplo:
- El cubo superior de la pirámide tiene coordenadas
(1,1,1). - Las cuatro esquinas de la base de la pirámide tienen coordenadas
(24,1,1),(24,1,24),(24,24,1), y(24,24,24). - Si decide colocar las esquinas del cuadrado en las esquinas de la pirámide, en la entrada
(70,1)puede dar la salida(24,24,1).
Puede suponer que solo se le darán coordenadas válidas (X,Y)como entrada. La corrección está completamente determinada por la siguiente regla: dos entradas válidas diferentes siempre deben dar dos entradas válidas diferentes.
Este es el código de golf : el código más corto gana.

