Thử nghiệm

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài

Tại Câu lạc bộ Kỹ thuật của tương lai, có ~n~ rô-bốt được xếp thành một hàng ngang và ban đầu đều quay mặt về phía trước. Trong đó có ~m~ rô-bốt mới lắp, còn lại là rô-bốt .

Người ta thử nghiệm phản ứng của rô-bốt với một chuỗi lệnh ~s~ gồm các ký tự trong tập ~{L, R, A}~:

  • ~L~: quay trái ~90^\circ~
  • ~R~: quay phải ~90^\circ~
  • ~A~: quay lại phía sau ~180^\circ~

Các lệnh trong ~s~ được truyền lần lượt theo thứ tự từ trái sang phải.

Rô-bốt cũ thực hiện đúng mọi lệnh. Rô-bốt mới:

  • thực hiện đúng lệnh ~A~
  • nhưng thực hiện ngược hai lệnh ~L~ và ~R~ (tức nhận ~L~ thì làm ~R~, nhận ~R~ thì làm ~L~)

Sau mỗi lệnh, nếu trong hàng tồn tại ít nhất hai rô-bốt quay theo hai hướng khác nhau thì hệ thống sẽ bật còi báo động đúng 1 lần tại thời điểm đó.

Yêu cầu

Tính tổng số lần còi báo động được bật trong suốt quá trình thực hiện toàn bộ chuỗi lệnh ~s~.

Dữ liệu

  • Dòng 1: hai số nguyên ~n~ và ~m~ (~1 \le n \le 10^5~, ~0 \le m \le n~)
  • Dòng 2: số nguyên ~k~ là độ dài xâu lệnh ~s~ (~1 \le k \le 10^5~)
  • Dòng 3: xâu ~s~ độ dài ~k~, chỉ gồm các ký tự ~L~, ~R~, ~A~

Kết quả

In ra một số nguyên — số lần còi báo động được bật.

Ví dụ

Ví dụ 1

Input

5 3
7
LRARLRL

Output

3

Giải thích

Ví dụ 1

Có ~2~ rô-bốt cũ và ~3~ rô-bốt mới, ban đầu tất cả cùng hướng ~0^\circ~. Sau mỗi lệnh trong ~LRARLRL~, hệ thống kiểm tra xem các rô-bốt có bị chia thành nhiều hướng khác nhau hay không; trong quá trình này còi báo động được bật tổng cộng ~3~ lần.

Ràng buộc và chấm điểm

  • ~1 \le n \le 10^5~
  • ~0 \le m \le n~
  • ~1 \le k \le 10^5~
  • ~s~ chỉ gồm các ký tự ~L~, ~R~, ~A~

Bình luận

Hãy đọc nội quy trước khi bình luận.


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