Sudoku laukuma pārbaude

ID: sudoku
Grūtība: 3/5
Laika limits: 1

Uzdevums

Vispārinātais SUDOKU laukums fiksētai naturāla skaitļa N vērtībai sastāv no rūtiņām, kas sakārtotas N2 rindās un N2 kolonnās. Katrā rūtiņā ierakstīts naturāls skaitlis no 1 līdz N2.

Viss laukums ir sadalīts N×N lielākās kvadrātveida rūtīs. Katrā no rūtīm ir tieši N2 rūtiņas.

SUDOKU laukums ir korekts, ja katrā laukuma rindā, katrā kolonnā un katrā lielajā rūtī ir ierakstīti visi skaitļi no 1 līdz N2.

Piemēram, gadījumam N=3 viena korekta laukuma piemērs ir:

+---+---+---+
|123|456|789|
|456|789|123|
|789|123|456|
+---+---+---+
|234|567|891|
|567|891|234|
|891|234|567|
+---+---+---+
|345|678|912|
|678|912|345|
|912|345|678|
+---+---+---+
Uzrakstiet programmu, kas pārbauda, vai dotais laukums ir korekts SUDOKU laukums!

 

Ievaddati

Teksta faila sudoku.dat pirmajā rindā ir dota naturāla skaitļa N(1≤N≤20) vērtība. Nākamajās N2 rindās dots laukuma apraksts. Faila i+1-ajā rindā katram i(1<i<N2) dots laukuma i-tās rindas apraksts: N2 naturāli skaitļi, robežās no 1 līdz N2. Starp katriem diviem blakus skaitļiem ievaddatos ir viena tukšumzīme.

 

Izvaddati

Teksta faila sudoku.rez vienīgajā rindā jāizvada "IR SUDOKU", ja dotais laukums ir korekts SUDOKU laukums, vai "NAV SUDOKU", ja dotais laukums nav korekts SUDOKU laukums.

 

Piemērs

sudoku.datsudoku.rez
3
1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 1 2 3
7 8 9 1 2 3 4 5 6
2 3 4 5 6 7 8 9 1
5 6 7 8 9 1 2 3 4
8 9 1 2 3 4 5 6 7
3 4 5 6 7 8 9 1 2
6 7 8 9 1 2 3 4 5
9 1 2 3 4 5 6 7 8
IR SUDOKU
sudoku.datsudoku.rez
2
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
NAV SUDOKU

 

Atsauces

Autors: M.Opmanis
© 2001-2002 olimps! http://www.lio.lv/olimps/