Vũ Điệu Bò

Đề bài

Mô tả

Bessie có 4 chân được đặt tên: FL (trước trái), FR (trước phải), RL (sau trái), RR (sau phải). Ban đầu Bessie đứng quay mặt về phía bắc, 4 chân nằm ở 4 ô trong lưới 2×2:

FL FR
 RL RR

Bessie thực hiện N bước nhảy múa. Mỗi bước là một lệnh gồm 3 ký tự:

  • Lệnh di chuyển (XYD): Di chuyển chân XY theo hướng D tương đối so với hướng Bessie đang quay mặt. Hướng D có thể là F (tiến), B (lùi), R (phải), L (trái).
  • Lệnh xoay (XYP): Bessie xoay 90° theo chiều kim đồng hồ quanh chân XY đứng yên. Hướng Bessie đang quay mặt cũng thay đổi theo.

Nếu sau bất kỳ lệnh nào, một chân di chuyển vào ô đang có chân khác, Bessie bị vấp ngã — xuất ra 1.

Nếu Bessie hoàn thành được toàn bộ vũ điệu, hãy tính diện tích hình chữ nhật nhỏ nhất (tính theo ô vuông) bao trùm tất cả các vị trí mà bất kỳ chân nào từng đứng trong suốt màn trình diễn (kể cả vị trí ban đầu).

Dữ liệu vào

  • Dòng đầu: số nguyên N (1N1000)
  • N dòng tiếp theo: mỗi dòng là một lệnh gồm 3 ký tự

Dữ liệu ra

Một số nguyên — diện tích hình chữ nhật bao trùm nhỏ nhất, hoặc 1 nếu Bessie bị vấp ngã.

Ràng buộc

  • 1N1000

Ví dụ

Input Output Giải thích
3
FRF
FRP
RLB
16 Sau 3 lệnh, vùng bao trùm là hình chữ nhật 4×4=16 ô.
14
RLP
FLF
FLP
FLL
FLF
FRF
FRR
FRF
RLB
RLL
RLB
RRB
RRR
RRB
24 Sau 14 lệnh, vùng bao trùm là 24 ô.

Ghi chú

Hình chữ nhật bao trùm tính trên tất cả vị trí đã từng có chân — không chỉ vị trí cuối cùng.

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