add: 220215-CN [golang]

This commit is contained in:
Lam Haoyin 2022-02-15 12:33:08 +08:00
parent d042dba79e
commit 2d3e268d3e
No known key found for this signature in database
GPG Key ID: 8C089CB1A2B7544F
1 changed files with 48 additions and 0 deletions

48
2202/220215-CN.go Normal file
View File

@ -0,0 +1,48 @@
package main
import "fmt"
func luckyNumbers(matrix [][]int) []int {
m, n := len(matrix), len(matrix[0])
rowMin := make([]int, m)
colMax := make([]int, n)
for i := 0; i < m; i++ {
rowMin[i] = 0x7FFFFFFF
for j := 0; j < n; j++ {
if matrix[i][j] < rowMin[i] {
rowMin[i] = matrix[i][j]
}
}
}
for j := 0; j < n; j++ {
colMax[j] = -0x7FFFFFFF
for i := 0; i < m; i++ {
if matrix[i][j] > colMax[j] {
colMax[j] = matrix[i][j]
}
}
}
ret := make([]int, 0)
for i := 0; i < m; i++ {
for j := 0; j < n; j++ {
if matrix[i][j] == rowMin[i] && matrix[i][j] == colMax[j] {
ret = append(ret, matrix[i][j])
}
}
}
return ret
}
func main() {
args := [][]int{
{3, 7, 8},
{9, 11, 13},
{15, 16, 17},
}
fmt.Println(luckyNumbers(args))
}