trang chủ / bài tập / downhatch

Cạn ly nào!

Đề bài

Mô tả

n người ngồi thành một vòng tròn, đánh số từ 0 đến n1. Người số 0 thực hiện lượt đầu tiên. Các lượt chơi được đánh số bắt đầu từ 1.

Ở lượt thứ j, gọi b là chỉ số của người đang chơi. Người này:

  1. chỉ vào người có chỉ số (b+1)modn bằng một trong hai cử chỉ: khuỷu tay (ký hiệu a) hoặc cái gật đầu (ký hiệu b);
  2. nếu j4 và ba lượt trước đó (lượt j1, j2, j3) đều sử dụng đúng cùng cử chỉ mà người này vừa sử dụng ở lượt j, thì người này được uống một ly nước cam;
  3. lượt chơi được chuyển sang người có chỉ số (b+1)modn.

Người được chỉ vào ở lượt cuối cùng không thực hiện hành động nào.

Vasya là người số 0. Cho trước chuỗi cử chỉ thực tế đã diễn ra trong toàn bộ trò chơi. Vasya muốn biết: nếu được chơi lại một cách tối ưu (chỉ thay đổi cử chỉ của chính Vasya ở các lượt của mình, các cử chỉ của những người khác giữ nguyên), thì Vasya có thể uống được tối đa bao nhiêu ly nước cam?

Dữ liệu vào

  • Dòng thứ nhất chứa một số nguyên n — số người chơi.
  • Dòng thứ hai chứa một chuỗi mô tả các cử chỉ đã diễn ra: ký tự thứ ia nếu người chơi ở lượt i chỉ bằng khuỷu tay, là b nếu chỉ bằng cái gật đầu.

Dữ liệu ra

In ra một số nguyên duy nhất — số ly nước cam tối đa Vasya có thể uống được.

Ràng buộc

  • 4n2000.
  • Chuỗi cử chỉ có độ dài từ 1 đến 2000.

Ví dụ

Input Output Giải thích
4
abbba
1 Vasya thực hiện lượt 1 và lượt 5. Ba lượt 2,3,4 đều là b, nên ở lượt 5 Vasya chọn b để uống một ly. Chuỗi trở thành abbbb.
4
abbab
0 Ở lượt 5 (của Vasya), ba lượt trước đó là b, b, a — không cùng cử chỉ nên Vasya không thể uống ly nào.

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