pub fn nth(row: usize) -> Vec<usize> {
match row {
n if n < 1 => vec![],
n if n == 1 => vec![1],
n => {
let prev_row = nth(n - 1);
let mut curr = Vec::with_capacity(n);
curr.push(1);
for i in 1..prev_row.len() {
curr.push(prev_row[i - 1] + prev_row[i]);
}
curr.push(1);
curr
}
}
}