119.go 394 B

1234567891011121314151617181920
  1. package main
  2. // O(k) space usage
  3. func getRow(rowIndex int) []int {
  4. res := [2][]int{make([]int, rowIndex+1), make([]int, rowIndex+1)}
  5. for i := 0; i < rowIndex+1; i++ {
  6. for j := 0; j < i+1; j++ {
  7. if j == 0 || i == j {
  8. res[i&1][j] = 1
  9. continue
  10. }
  11. res[i&1][j] = res[i&1^1][j-1] + res[i&1^1][j]
  12. }
  13. }
  14. return res[rowIndex&1]
  15. }
  16. // func main() {
  17. // fmt.Println(getRow(3))
  18. // }