SUDO - Sudoku
Dữ liệu vào: standard input
Dữ liệu ra: standard output
Giới hạn thời gian: 1.0 giây
Giới hạn bộ nhớ: 128 megabyte
Đăng bởi: admin

Cho ma trận Sudoku với kích thước 9x9 như hình vẽ.

 

Luật chơi khá đơn giản. Với các ô đã cho trước ở hình 1, bạn hãy điền vào tất cả các ô còn lại trong ma trận sao cho trên các dòng, luôn xuất hiện tất cả các số từ 1 đến 9, tương tự, trên các cột và trong 9 ma trận nhỏ 3x3 cũng phải xuất hiện tất cả các số từ 1 đến 9 (như trong đáp án ở hình 2).

Yêu cầu: Cho ma trận kích thước 9x9, các ô trống được biểu diễn bằng chữ số 0, còn các ô chứa số cho trước thì biểu diễn chính số đó. Hãy xuất ra ma trận đáp án.

Dữ liệu nhập: Là ma trận 9x9, mỗi số trên một dòng cách nhau một khoảng trống, chứa các số từ 0 đến 9. Trong đó các số 0 là ô trống cần tìm. Dữ liệu đề bài cho đảm bảo là hợp lệ (không có 2 số giống nhau trên cùng dòng, cùng cột hay cùng ô vuông 3x3 nhỏ).

Dữ liệu xuất:

- Nếu không có đáp án in ra một số duy nhất là -1.

- Nếu có đáp án, in ra ma trận 9x9 của trò chơi, các số trên một dòng cách nhau một khoảng trống. Nếu có nhiều đáp án, chỉ cần xuất một đáp án bất kỳ.

Ví dụ

  • input
    5 3 0 0 7 0 0 0 0
    6 0 0 1 9 5 0 0 0
    0 9 8 0 0 0 0 6 0
    8 0 0 0 6 0 0 0 3
    4 0 0 8 0 3 0 0 1
    7 0 0 0 2 0 0 0 6
    0 6 0 0 0 0 2 8 0
    0 0 0 4 1 9 0 0 5
    0 0 0 0 8 0 0 7 9
    output
    5 3 4 6 7 8 9 1 2
    6 7 2 1 9 5 3 4 8
    1 9 8 3 4 2 5 6 7
    8 5 9 7 6 1 4 2 3
    4 2 6 8 5 3 7 9 1
    7 1 3 9 2 4 8 5 6
    9 6 1 5 3 7 2 8 4
    2 8 7 4 1 9 6 3 5
    3 4 5 2 8 6 1 7 9
  • input
    0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0
    output
    1 2 3 4 5 6 7 8 9
    4 5 6 7 8 9 1 2 3
    7 8 9 1 2 3 4 5 6
    2 1 4 3 6 5 8 9 7
    3 6 5 8 9 7 2 1 4
    8 9 7 2 1 4 3 6 5
    5 3 1 6 4 2 9 7 8
    6 4 2 9 7 8 5 3 1
    9 7 8 5 3 1 6 4 2

(Nguồn: VietNamVoDich)

Back to Top