import Foundation
func columnsHaveUniqueNumbers(_ matrix: [[Int]]) -> Bool {
guard !matrix.isEmpty, !matrix[0].isEmpty else { return true }
let numCols = matrix[0].count
for j in 0..<numCols {
var columnSet = Set<Int>()
for row in matrix {
if !columnSet.insert(row[j]).inserted {
return false // Duplicate found
}
}
}
return true
}
let matrix1 = [
[1, 4, 7],
[2, 5, 8],
[3, 6, 9]
]
let matrix2 = [
[1, 4, 7],
[2, 4, 8],
[3, 6, 9]
]
print("Matrix 1 columns have unique numbers:", columnsHaveUniqueNumbers(matrix1))
print("Matrix 2 columns have unique numbers:", columnsHaveUniqueNumbers(matrix2))
/*
run:
Matrix 1 columns have unique numbers: true
Matrix 2 columns have unique numbers: false
*/