Sudoku

数独の盤面が与えられたとき、それが有効なものかどうかを判定する問題です。

有効な の数独盤面には、以下の条件がすべて満たされている必要があります:

  • 各行に 1 から 9 までの数字がすべて含まれている。

  • 各列に 1 から 9 までの数字がすべて含まれている。

  • の各ブロックに 1 から 9 までの数字がすべて含まれている。

つまり、無効な数独の盤面には、以下のような問題が発生している可能性があります:

  • ある行に同じ数字が重複している。

  • ある列に同じ数字が重複している。

  • のブロック内で同じ数字が重複している。

Screen Shot 2022-11-01 at 12.03.36 PM.png

Input

入力として、 の数値グリッドが与えられます。埋まっている数字は 0 から 9 の整数で、空欄は 0 で表されます。

Output

もし盤面が有効であればプログラムは Valid と出力し、それ以外の場合は Not valid と出力してください。

Examples

入力 (Input)

出力 (Output)

0 0 0 0 0 8 0 0 2
0 7 0 0 0 0 0 1 0
0 2 0 7 0 0 9 0 0
0 0 0 0 0 0 7 0 1
0 0 0 9 0 2 6 0 0
3 0 5 8 0 0 0 4 0
9 0 0 6 0 0 4 0 0
0 0 0 2 0 7 0 6 0
0 0 1 0 0 4 0 0 0

Valid

0 0 0 0 0 8 0 0 2
0 7 0 0 0 0 0 1 0
0 2 0 7 0 0 9 0 0
0 0 0 0 0 0 7 0 1
0 6 0 9 0 2 6 0 0
3 0 5 8 0 0 0 4 0
9 0 0 6 0 0 4 0 0
0 0 0 2 0 7 0 6 0
0 0 1 0 0 4 0 0 0

Not valid

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue