0h n0 là một trò chơi rất đơn giản và thú vị, hơi giống Sudoku hoặc quét mìn.
Luật chơi
(Tôi khuyên bạn nên sử dụng hướng dẫn trong trò chơi nếu bạn có thể, nó rất đơn giản và hữu ích)
Câu đố bắt đầu với một n * n
bảng chứa một số mảnh cố định và một số ô trống, và người giải phải tìm cách lấp đầy các ô trống bằng các mảnh và thỏa mãn tất cả các ràng buộc được áp đặt bởi các mảnh cố định. Dưới đây là các loại mảnh chúng tôi sẽ sử dụng với chữ viết tắt:
#
Mảnh màu đỏ (khối xem của một mảnh màu xanh)O
Mảnh màu xanh.
Vị trí trốngnumber
Số màu xanh được đánh số (number
là số có một chữ số> 0)
Tất cả các mảnh được đánh số phải nhìn thấy chính xác cùng số lượng các mảnh màu xanh như số. Ví dụ:
#1O#O
...O.
Các 1
mảnh chỉ có thể nhìn thấy một mảnh màu xanh khác.
Làm thế nào các mảnh nhìn thấy nhau
Hai mảnh màu xanh có thể nhìn thấy nhau nếu chúng ở cùng một hàng hoặc cột và không có mảnh màu đỏ nào nằm giữa chúng. Thí dụ:
( S
là một vị trí mà O
mảnh có thể nhìn thấy, X
không thể nhìn thấy)
S
S
X#SOSS
#
X
Mỗi mảnh màu xanh phải nhìn thấy ít nhất một mảnh màu xanh khác:
#O#
Không làm việc, nhưng:
#OO
Hoặc là:
###
Làm việc.
Bảng demo giải quyết
.1..
..1.
....
22#2
Phía dưới bên phải 2 chỉ có thể nhìn thấy phía trên, vì vậy chúng phải có màu xanh và phía trên bên phải phải có màu đỏ.
.1.#
..1O
...O
22#2
Kể từ khi 1
được lấp đầy, chúng ta có thể bao quanh nó với các mảnh màu đỏ.
.1##
.#1O
..#O
22#2
Phía trên bên trái 1
chỉ có thể nhìn theo một hướng bây giờ, vì vậy chúng tôi có thể điền vào.
O1##
.#1O
..#O
22#2
Bây giờ về những 2
s cuối cùng . Chúng ta có thể đặt 2 mảnh màu xanh lên trên chúng.
O1##
.#1O
OO#O
22#2
Cái cuối cùng sẽ được lấp đầy #
O1##
##1O
OO#O
22#2
Đầu vào
Đầu vào là một chuỗi nhiều dòng. Kích thước sẽ 9x9
không có dấu cách. Nó có các loại mảnh sau:
.
Trống#
Đặt trước màu đỏ, không thể thay đổinumber
Số cài đặt trước, không thể thay đổi
(Lưu ý rằng màu xanh sẽ không bao giờ có trong đầu vào)
Đầu ra
Đầu ra giống như đầu vào, với sự thay đổi mà trống ( .
) được thay thế bằng màu đỏ hoặc màu xanh để giải bảng và các số được thay thế bằng các mảnh màu xanh ( O
).
Ví dụ
(Lưu ý rằng có thể có nhiều giải pháp cho mỗi câu đố, nhưng bạn chỉ cần hiển thị một trong số chúng)
Input:
........4
...3.1...
45...2.3.
..9......
1..6#44..
....4..5.
....4.36.
2.......6
1....4...
Output:
OOO###OOO
OOOO#O#OO
OOO#OO#OO
#OOOO#O##
O#OO#OOOO
O#OOOO#OO
#OOOO#OOO
OO#O#OOOO
O#OOOO#O#
Input:
..7..#...
#...8..11
2....5...
..5...48.
...#...4.
.5...6...
...1.2...
2.....6.8
.7..#....
Output:
OOOOO####
##OOOO#OO
O#OOOO###
OOO#OOOOO
OO##O##O#
#O##OOOOO
#O#O#O#OO
OO#OOOOOO
OOO###O#O
Input:
5.3..33..
...4...23
.6.6.34..
...3#....
....5..4.
.5....3..
7.98.6#.3
.5.6..2..
..6...2..
Output:
OOOOO####
##OOOO#OO
O#OOOO###
OOO#OOOOO
OO##O##O#
#O##OOOOO
#O#O#O#OO
OO#OOOOOO
OOO###O#O
Cảm ơn @PeterTaylor và @apsillers vì tất cả sự giúp đỡ của họ trong hộp cát!