int nCr(int n, int r) {
if(n == 0 || r == 0 || n == r)
return 1;
r = min(r, n - r);
int res = 1;
for(int i = 1; i <= r; i++)
res = res * (n - i + 1) / i;
return res;
}
vector<vector<int> > Solution::solve(int A) {
vector<vector<int>> res;
for(int i = 0; i < A; i++) {
res.push_back(vector<int>(i + 1));
for(int j = 0; j <= i; j++)
res[i][j] = nCr(i, j);
}
return res;
}