P9903 [COCI 2023/2024 #1] Sudoku

题目描述

数独是一款逻辑推理类游戏,玩家的任务是用数字 $1\sim9$ 填满一个 $9\times9$ 的网格,使其满足以下条件: - 数字 $1\sim 9$ 在每一行恰好出现一次。 - 数字 $1\sim 9$ 在每一列恰好出现一次。 - 把网格划分成 $9$ 个 $3\times3$ 的宫,数字 $1\sim 9$ 在每一宫恰好出现一次。 现在给你一个未完成的数独网格,请你判断当前是否存在错误。**一个网格是存在错误的,当且仅当存在一行或一列或一宫,其中至少一个数字出现了 $2$ 次及以上。** 如图展示了一个数独网格,它不存在错误。 ![](https://cdn.luogu.com.cn/upload/image_hosting/d54z2mz7.png)

输入格式

输入一个 $13\times 13$ 的字符矩阵,表示数独网格,其中: - 字符 `-`、`|`、`+` 表示网格框架,表示将网格划分为 $9$ 个 $3\times 3$ 的宫。 - 字符 `.` 表示一个未填数字的单元格。 - 从 $1\sim9$ 的数字表示所在单元格已经填了这个数字。 具体请见样例。

输出格式

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

说明/提示

### 【样例解释#1】 这个网格没有错误,所有输出 `OK`。 ### 【样例解释#2】 第 $9$ 列数字 $5$ 出现了 $2$ 次,且右下角的一个宫中数字 $5$ 出现了 $2$ 次。 ### 【样例解释#3】 第 $2$ 列数字 $2$ 出现了 $2$ 次,且第 $7$ 列数字 $6$ 出现了 $2$ 次。 ### 【数据范围】 对于 $100\%$ 的数据,字符矩阵中只包含数字 $1\sim9$、字符 `-`、`|`、`+`、`.`,且字符 `-`、`|`、`+` 出现的位置与样例一致。 **本题采用捆绑测试。** | 子任务 | 特殊性质 | 分值 | | :----------: | :----------: | :----------: | | $1$ | 如果存在错误,一定可以只检查行的限制找到 | $11$ | | $2$ | 如果存在错误,一定可以只检查列的限制找到 | $12$ | | $3$ | 如果存在错误,一定可以只检查宫的限制找到 | $13$ | | $4$ | 无特殊性质 | $14$ | ### 【说明】 本题分值按 COCI 原题设置,满分 $50$。 题目译自 [COCI2023-2024](https://hsin.hr/coci/archive/2023_2024/) [CONTEST #1](https://hsin.hr/coci/archive/2023_2024/contest1_tasks.pdf) _**T1 Sudoku**_。