Problème
Afficher l’original (anglais)La première ligne est [1]. Chaque ligne suivante commence et se termine par 1. Chaque élément intérieur est la somme des deux éléments situés juste au-dessus. Retournez les premières rows lignes, en commençant par le seul 1.
Implémentez pascals_triangle(rows).
Entrée
rows : Nombre de lignes à générer.
Sortie
Retournez une liste de lignes, en commençant par le haut ; chaque ligne est une liste d'entiers.
Contraintes
0 ≤ rows ≤ 60. Chaque élément tient dans un entier signé de 64 bits. Zéro ligne doit retourner une liste vide.
Exemples
Entrée :
rows = 4
Sortie attendue :
expected = [
[1],
[1, 1],
[1, 2, 1],
[1, 3, 3, 1]
]
Entrée :
long long rows = 4;
Sortie attendue :
std::vector<std::vector<long long>> expected = {
{1},
{1, 1},
{1, 2, 1},
{1, 3, 3, 1}
};
Entrée :
long rows = 4;
Sortie attendue :
long[][] expected = new long[][] {
new long[] {1},
new long[] {1, 1},
new long[] {1, 2, 1},
new long[] {1, 3, 3, 1}
};
Explication
Le 2 à la ligne 3 est 1 + 1. Les deux 3 à l'intérieur de la ligne 4 sont 1 + 2 et 2 + 1.
Entrée :
rows = 0
Sortie attendue :
expected = []
Entrée :
long long rows = 0;
Sortie attendue :
std::vector<std::vector<long long>> expected = {};
Entrée :
long rows = 0;
Sortie attendue :
long[][] expected = new long[][] {};
Explication
Aucune ligne n'est demandée, il faut donc retourner une liste vide.
Références
Ce défi a été adapté pour CodeUtility. Suivez l'énoncé et les contraintes ci-dessus.