Kéo Búa Bao Trừ Một

Đề bài

Mô tả

Trong trò chơi Kéo Búa Bao biến thể, có N ký hiệu được đánh số từ 1 đến N. Kết quả giữa hai ký hiệu được cho bởi một bảng: nếu ký hiệu i đấu với ký hiệu j, kết quả là W (thắng), L (thua), hoặc D (hòa) từ góc nhìn của ký hiệu i.

Bessie và Elsie chơi M ván. Trong mỗi ván, Elsie chọn hai ký hiệu xy (công khai). Bessie sau đó chọn hai ký hiệu ab (có thể trùng nhau). Cả hai người đều chọn một ký hiệu từ cặp của mình để đấu. Bessie thắng nếu cô ấy có ít nhất một ký hiệu đánh bại được cả hai ký hiệu của Elsie (bất kể Elsie chọn ký hiệu nào).

Đếm số cặp (a,b) mà Bessie có thể chọn để đảm bảo thắng.

Dữ liệu vào

  • Dòng 1: Hai số nguyên NM.
  • N dòng tiếp theo: Dòng thứ i chứa i ký tự thuộc {D,W,L} — kết quả khi ký hiệu i đấu với ký hiệu 1,2,,i.
  • M dòng tiếp theo: Hai số nguyên x, y — cặp ký hiệu của Elsie.

Dữ liệu ra

  • M dòng, mỗi dòng là số cặp (a,b) giúp Bessie thắng.

Ràng buộc

  • 1N3000
  • 1M3000
  • Giới hạn thời gian: 3 giây

Ví dụ

Input Output Giải thích
3 3
D
WD
LWD
1 2
2 3
1 1
0
0
5
Ván 3: Elsie chọn (1,1), Bessie cần ký hiệu thắng 1. Ký hiệu 2 thắng 1, nên mọi cặp (a,b) có chứa 2 đều thắng: (2,1),(2,2),(2,3),(1,2),(3,2) = 5 cặp.

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