-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathmain.cpp
34 lines (31 loc) · 1.24 KB
/
main.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
class Solution
{
public:
vector<vector<int>> generate(int numRows)
{
// Initialisation du vecteur de vecteurs pour stocker le triangle de Pascal
vector<vector<int>> answer(numRows);
// Initialisation de la première ligne du triangle de Pascal avec 1
answer[0] = {1};
// Boucle pour générer les lignes suivantes du triangle de Pascal
for (int i = 1; i < numRows; i++)
{
vector<int> row(i + 1);
// Ajout du premier élément de chaque ligne, qui est toujours 1
row[0] = 1;
for (int j = 1; j < i; j++)
{
// Récupération de l'élément de la ligne précédente et de la colonne précédente
int a = answer[i - 1][j - 1];
// Récupération de l'élément de la ligne précédente et de la même colonne
int b = answer[i - 1][j];
// Ajout de la somme des deux éléments précédents à la ligne actuelle
row[j] = a + b;
}
// Ajout du dernier élément de chaque ligne, qui est toujours 1
row[i] = 1;
answer[i] = row;
}
return answer; // Renvoi du triangle de Pascal généré
}
};