#P9903. [COCI 2023/2024 #1] Sudoku

[COCI 2023/2024 #1] Sudoku

题目描述

数独是一款逻辑推理类游戏,玩家的任务是用数字 191\sim9 填满一个 9×99\times9 的网格,使其满足以下条件:

  • 数字 191\sim 9 在每一行恰好出现一次。
  • 数字 191\sim 9 在每一列恰好出现一次。
  • 把网格划分成 993×33\times3 的宫,数字 191\sim 9 在每一宫恰好出现一次。

现在给你一个未完成的数独网格,请你判断当前是否存在错误。一个网格是存在错误的,当且仅当存在一行或一列或一宫,其中至少一个数字出现了 22 次及以上。

如图展示了一个数独网格,它不存在错误。

输入格式

输入一个 13×1313\times 13 的字符矩阵,表示数独网格,其中:

  • 字符 -|+ 表示网格框架,表示将网格划分为 993×33\times 3 的宫。
  • 字符 . 表示一个未填数字的单元格。
  • 191\sim9 的数字表示所在单元格已经填了这个数字。

具体请见样例。

输出格式

一行一个字符串,如果这个网格存在错误,输出 GRESKA,否则输出 OK

+---+---+---+
|52.|...|.81|
|.39|58.|...|
|.8.|.9.|...|
+---+---+---+
|24.|...|1.3|
|1..|43.|86.|
|.63|..7|.24|
+---+---+---+
|...|1.9|35.|
|..8|.74|6..|
|31.|86.|7.9|
+---+---+---+
OK
+---+---+---+
|3..|6..|..4|
|4.9|8.1|..7|
|..7|.49|6..|
+---+---+---+
|946|157|8.2|
|.2.|3..|745|
|.7.|28.|...|
+---+---+---+
|...|4..|..5|
|8.5|.6.|.2.|
|734|..8|5..|
+---+---+---+
GRESKA
+---+---+---+
|5..|98.|67.|
|6..|...|.31|
|.2.|613|.4.|
+---+---+---+
|.96|8.2|1.7|
|.28|..5|.9.|
|7.3|19.|6..|
+---+---+---+
|962|.7.|.1.|
|1.5|...|76.|
|.7.|5..|9..|
+---+---+---+
GRESKA

提示

【样例解释#1】

这个网格没有错误,所有输出 OK

【样例解释#2】

99 列数字 55 出现了 22 次,且右下角的一个宫中数字 55 出现了 22 次。

【样例解释#3】

22 列数字 22 出现了 22 次,且第 77 列数字 66 出现了 22 次。

【数据范围】

对于 100%100\% 的数据,字符矩阵中只包含数字 191\sim9、字符 -|+.,且字符 -|+ 出现的位置与样例一致。

本题采用捆绑测试。

子任务 特殊性质 分值
11 如果存在错误,一定可以只检查行的限制找到 1111
22 如果存在错误,一定可以只检查列的限制找到 1212
33 如果存在错误,一定可以只检查宫的限制找到 1313
44 无特殊性质 1414

【说明】

本题分值按 COCI 原题设置,满分 5050

题目译自 COCI2022-2023 CONTEST #1 T1 Sudoku