Menu
CoddyTech

Pascal's Triangle

Dans le triangle de Pascal, la première ligne est [1]. Chaque ligne suivante comporte une entrée de plus, commence et se termine par 1, et chaque entrée intermédiaire est la somme des deux entrées directement au-dessus. On vous donne un entier numRows. Renvoyez les numRows premières lignes du triangle, en commençant par la ligne du haut, chaque ligne étant un tableau d'entiers.

Fonction

generate(numRows: integer) → integer-2d-array
numRowsinteger
combien de lignes du triangle construire
Renvoieinteger-2d-array
les numRows premières lignes, en commençant par la ligne du haut

Contraintes

  • 1 ≤ numRows ≤ 30
  • Chaque valeur des 30 premières lignes tient dans un entier signé de 32 bits. La plus grande est 77558760, au milieu de la ligne 30.

Exemples

Entrée
numRows = 5
Sortie
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
Explication
Chaque entrée intérieure additionne les deux entrées situées au-dessus. Quatrième ligne : 3 = 1 + 2 et 3 = 2 + 1. Cinquième ligne : 4 = 1 + 3, 6 = 3 + 3, 4 = 3 + 1.
challenge icon

Pour aller plus loin

Peux-tu ne conserver qu’un seul tableau et le mettre à jour sur place, ligne après ligne ? Dans quel sens la boucle interne doit-elle s’exécuter, et pourquoi ?

Réinitialiser le code
def generate(numRows):
    # Écrivez le code ici

Test #1

Test #2

Argument

numRows = 5

Résultat attendu

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