Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,900 questions

51,831 answers

573 users

How to check if a 3x3 grid is a valid Sudoku grid in Kotlin

1 Answer

0 votes
// Sudoku solution must satisfy all of the following rules:
// Each of the digits 1-9 must occur once in each row.
// Each of the digits 1-9 must occur once in each column.
// Each of the digits 1-9 must occur once in each 3x3 grid.

fun isValidSudoku3x3Grid(grid: Array<Array<Int>>): Boolean {
    if (grid.size != 3 || grid[0].size != 3) {
        return false // Ensure it's a 3x3 grid
    }

    val seen = mutableSetOf<Int>()
    for (row in grid) {
        for (num in row) {
            if (num < 1 || num > 9 || seen.contains(num)) {
                return false // Invalid if number is out of range or repeated
            }
            seen.add(num)
        }
    }

    return true // Valid if all numbers 1-9 appear exactly once
}

fun main() {
    val grid = arrayOf(
        arrayOf(5, 3, 4),
        arrayOf(6, 7, 2),
        arrayOf(1, 9, 8)
    )

    if (isValidSudoku3x3Grid(grid)) {
        println("The grid is a valid Sudoku grid!")
    } else {
        println("The grid is NOT a valid Sudoku grid!")
    }
}

 
  
/*
run:
  
The grid is a valid Sudoku grid!
  
*/

 



answered May 30, 2025 by avibootz

Related questions

...