Cho một WxH
lưới, có bao nhiêu mê cung có thể có?
Những điều bạn biết về mê cung:
- Lưới chính xác là
H
hình vuông cao vàW
hình vuông rộng. - Có ba loại hình vuông: Bắt đầu, Kết thúc và Trống. Mê cung của bạn phải chứa chính xác 1 Bắt đầu và 1 Kết thúc, và tất cả các ô vuông còn lại đều trống.
- Có những bức tường bao quanh toàn bộ mê cung.
- Các bức tường có thể tồn tại trên cạnh giữa bất kỳ hai hình vuông, trừ khi nó phá vỡ quy tắc dưới đây:
- Phải tồn tại một đường dẫn từ hình vuông Bắt đầu đến hình vuông Kết thúc.
Do đó, với hai số, W
và H
, bạn phải trả về một số duy nhất đại diện cho số lượng cấu hình vuông / tường có thể. Bạn được đảm bảo rằngW*H > 1
Ví dụ, 2x2
mê cung có 100
cấu hình chính xác khác nhau có thể.
Đây là một môn đánh gôn nên câu trả lời ngắn nhất sẽ thắng!
Có bất kỳ ràng buộc về kích thước và / hoặc thời gian chạy? Trừ khi ai đó tìm thấy một thuật toán có thể tính toán hiệu quả (có vẻ khó khăn), tôi hy vọng rằng hầu hết các giải pháp sẽ có thời gian chạy theo cấp số nhân. Có nghĩa là chúng sẽ nổ ở các kích cỡ vừa phải.
—
Reto Koradi 16/07/2015
@RetoKoradi không, không có ràng buộc thời gian chạy. Tôi không chắc chắn nếu các ràng buộc sẽ làm cho vấn đề không thể hay không.
—
Nathan Merrill