package main
import (
"fmt"
)
func findCommonElementInMatrixRows(matrix [][]int) int {
rows := len(matrix)
if rows == 0 {
return -1
}
cols := len(matrix[0])
freq := make(map[int]int)
for i := 0; i < rows; i++ {
freq[matrix[i][0]]++
for j := 1; j < cols; j++ {
if matrix[i][j] != matrix[i][j-1] {
freq[matrix[i][j]]++
}
}
}
for key, count := range freq {
if count == rows {
return key
}
}
return -1
}
func main() {
matrix := [][]int{
{1, 2, 3, 5, 36},
{4, 5, 7, 9, 10},
{5, 6, 8, 9, 18},
{1, 3, 5, 8, 24},
}
result := findCommonElementInMatrixRows(matrix)
if result != -1 {
fmt.Printf("Common element in all rows: %d\n", result)
} else {
fmt.Println("No common element found in all rows.")
}
}
/*
run:
Common element in all rows: 5
*/