Time limit: 1.0s , Memory limit: 256M , Points: 100 (partial)
Ảnh minh họa

Hình ảnh tạo bởi ChatGPT

Sudoku là một trò chơi logic kết hợp dựa trên việc điền số. Mục tiêu là điền các chữ số từ 1 đến 9 vào một bảng \(9 × 9\) sao cho các điều kiện sau được thỏa mãn:

  • Điều kiện 1: Mỗi hàng phải chứa chính xác một lần xuất hiện của các chữ số từ 1 đến 9.
  • Điều kiện 2: Mỗi cột phải chứa chính xác một lần xuất hiện của các chữ số từ 1 đến 9.
  • Điều kiện 3: Mỗi khối vuông \(3 × 3\) trong tổng số chín khối con cũng phải chứa chính xác một lần xuất hiện của các chữ số từ 1 đến 9.

Cho một bảng Sudoku chưa hoàn thiện, hãy xác định xem hiện tại trong bảng có lỗi nào hay không.

Lưu ý rằng không cần kiểm tra xem bảng Sudoku có thể giải được hay không, chỉ cần kiểm tra tính hợp lệ của bảng Sudoku hiện tại.

Input

  • Dữ liệu đầu vào mô tả bảng Sudoku.
  • Các ký tự |, -+ được dùng để tạo khung chia giữa các khối \(3 × 3\).
  • Ký tự . biểu thị một ô trống.
  • Các ký tự còn lại là các chữ số từ 1 đến 9.

Output

  • In ra GRESKA nếu bảng Sudoku có lỗi (vi phạm một trong các quy tắc đã được mô tả). Ngược lại, in ra OK nếu bảng Sudoku hợp lệ.

Samples

Sample Input 1
+---+---+---+
|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|
+---+---+---+
Sample Output 1
OK
Sample Input 2
+---+---+---+
|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..|
+---+---+---+
Sample Output 2
GRESKA
Sample Input 3
+---+---+---+
|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..|
+---+---+---+
Sample Output 3
GRESKA

Scoring

  • Subtask 1 với 19\% số điểm: Có thể xác định tính hợp lệ của bảng Sudoku bằng cách chỉ kiểm tra điều kiện 1.
  • Subtask 2 với 21\% số điểm: Có thể xác định tính hợp lệ của bảng Sudoku bằng cách chỉ kiểm tra điều kiện 2.
  • Subtask 3 với 25\% số điểm: Có thể xác định tính hợp lệ của bảng Sudoku bằng cách chỉ kiểm tra điều kiện 3.
  • Subtask 4 với 35\% số điểm: Không có ràng buộc gì thêm

Clarification

  • Trong ví dụ đầu tiên, bảng không có lỗi nào, kết quả in ra OK.
  • Trong ví dụ thứ hai, số 5 xuất hiện hai lần ở cột thứ 9 (vi phạm điều kiện 2), ngoài ra ở ô vuông \(3 × 3\) bên phải dưới cùng cũng xuất hiện hai lần số 5 (vi phạm điều kiện 3).
  • Trong ví dụ thứ ba, số 2 xuất hiện hai lần ở cột thứ 2 và số 6 xuất hiện hai lần ở cột thứ 6 (vi phạm điều kiện 2).

Comments