12345678910111213141516171819202122232425262728293031 |
- var dx []int = []int{1, 0, -1, 0}
- var dy []int = []int{0, -1, 0, 1}
- func pacificAtlantic(matrix [][]int) (res [][]int) {
- m, n := len(matrix), len(matrix[0])
- ocean := make([][]int, m)
- for i := 0; i < m; i++ {
- ocean[i] = make([]int, n)
- }
- for i := 0; i < m; i++ { // b10: pacific, b01: atlantic
- ocean[i][0] |= 2
- ocean[i][n-1] |= 1
- }
- for i := 0; i < n; i++ {
- ocean[0][i] |= 2
- ocean[m-1][i] |= 1
- }
- dfs(matrix, 0, 0, ocean)
- for i := 0; i < m; i++ {
- for j := 0; j < m; j++ {
- if ocean[i][j] == 3 {
- res = append(res, []int{j, i})
- }
- }
- }
- return
- }
- func dfs(matrix [][]int, x, y int, ocean [][]int) {
-
- }
|