#5391. Sudoku (Mã bài: SUDOKU)

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Cho một bảng Sudoku 9 \times 9 chưa hoàn thành, trong đó một số ô đã được điền số và một số ô còn trống (được ký hiệu bằng số 0 hoặc dấu '.'). Hãy điền các số còn lại để giải hoàn chỉnh bảng Sudoku. Một bảng Sudoku hợp lệ phải thỏa mãn ba điều kiện:

  1. Mỗi hàng phải chứa các chữ số từ 1 đến 9 đúng một lần.
  2. Mỗi cột phải chứa các chữ số từ 1 đến 9 đúng một lần.
  3. Mỗi ô vuông con 3 \times 3 (được ngăn cách bởi các đường kẻ đậm) phải chứa các chữ số từ 1 đến 9 đúng một lần.

Dữ liệu: Gồm 9 dòng, mỗi dòng chứa 9 ký tự là các chữ số từ '1' đến '9' hoặc dấu '.' đại diện cho ô trống.

Kết quả: - In ra bảng Sudoku đã được giải hoàn chỉnh, nếu có nhiều lời giải thi in ra lời giản bất kỳ.

Ví dụ:

Dữ liệu:

53..7....
6..195...
.98....6.
8...6...3
4..8.3..1
7...2...6
.6....28.
...419..5
....8..79

Kết quả:

534678912
672195348
198342567
859761423
426853791
713924856
961537284
287419635
345286179

Giới hạn: Bảng đầu vào luôn đảm bảo có ít nhất một lời giải.