Menu
CoddyTech

Pascal's Triangle

En el triángulo de Pascal, la primera fila es [1]. Cada fila posterior tiene una entrada más, comienza y termina con 1, y cada entrada intermedia es la suma de las dos entradas que tiene justo encima. Recibes un entero numRows. Devuelve las primeras numRows filas del triángulo, con la fila superior primero y cada fila como un arreglo de enteros.

Función

generate(numRows: integer) → integer-2d-array
numRowsinteger
cuántas filas del triángulo construir
Devuelveinteger-2d-array
las primeras numRows filas, con la fila superior primero

Restricciones

  • 1 ≤ numRows ≤ 30
  • Cada entrada de las primeras 30 filas cabe en un entero con signo de 32 bits. La mayor es 77558760, en el centro de la fila 30.

Ejemplos

Entrada
numRows = 5
Salida
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
Explicación
Cada entrada interior suma las dos que tiene encima. En la cuarta fila, 3 = 1 + 2 y 3 = 2 + 1. En la quinta fila, 4 = 1 + 3, 6 = 3 + 3 y 4 = 3 + 1.

lock icon+13 pruebas ocultas al enviar

challenge icon

Para ir más allá

¿Puedes construir solo la última fila en una única matriz, actualizándola in situ fila tras fila en lugar de conservar las filas anteriores? ¿En qué dirección debe avanzar el bucle interno y por qué?

Restablecer código
def generate(numRows):
    # Escribe el código aquí
Casos de prueba

Caso 1

Caso 2

Entrada

numRows = 5

Esperado

[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]