Mê Cung Tic-Tac-Toe

Đề bài

Mô tả

Bessie di chuyển trong một mê cung N×N và đồng thời chơi trò tic-tac-toe trên bảng 3×3.

Luật tic-tac-toe phiên bản bò: Bảng 3×3 sử dụng ký tự MO. Điều kiện thắng: tạo chuỗi MOO theo hàng, cột hoặc đường chéo (bao gồm cả chiều ngược OOM).

Mê cung: Lưới N×N, mỗi ô biểu diễn bằng 3 ký tự:

  • ###: tường (không đi qua được)
  • ...: ô trống
  • BBB: vị trí xuất phát của Bessie
  • Mij hoặc Oij: khi Bessie bước vào ô này, ký tự M hoặc O được đặt vào vị trí (i,j) trên bảng tic-tac-toe (nếu ô đó còn trống)

Bessie di chuyển theo 4 hướng (trên, dưới, trái, phải). Viền mê cung và các ô ### là tường. Trò chơi kết thúc ngay khi bảng tic-tac-toe đạt trạng thái thắng.

Hãy đếm số trạng thái bảng thắng phân biệt mà Bessie có thể đạt được.

Dữ liệu vào

  • Dòng 1: Số nguyên N (3N25)
  • N dòng tiếp theo: Mỗi dòng gồm 3N ký tự mô tả mê cung

Dữ liệu ra

Một số nguyên: số trạng thái bảng thắng phân biệt.

Ràng buộc

  • 3N25

Ví dụ

Input Output Giải thích
7
#####################
###O11###...###M13###
###......O22......###
###...######M22######
###BBB###M31###M11###
###...O32...M33O31###
#####################
8 Bessie có thể đạt được 8 trạng thái bảng thắng khác nhau bằng cách di chuyển theo các đường đi khác nhau trong mê cung.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0