Lật ký tự
Xem dạng PDFMô tả và yêu cầu
Cho xâu 𝑆 gồm 𝑁 kí tự '.' và '#' được đánh số từ 1 đến 𝑁. Thao tác lật kí tự của xâu
được định nghĩa như sau:
Chọn số nguyên 𝑖(1 ≤ 𝑖 ≤ 𝑁),
Nếu thứ tự thứ 𝑖 của xâu 𝑆 là '.' Thì nó sẽ được thay thế bằng '#'. Ngược lại,
nếu là '#' thì sẽ được thay thế bằng '. '.
Yêu cầu: Hãy lập trình tính xem cần thực hiện ít nhất bao nhiêu thao tác để trong
xâu không có kí tự '.' nào ở ngay bên phải kí tự '#'.
Dữ liệu: vào từ thiết bị nhập chuẩn:
Dòng 1: ghi số nguyên 𝑁(1 ≤ 𝑁 ≤ 200.000) là số lượng kí tự trong xâu 𝑆;
Dòng 2: ghi xâu 𝑆 gồm 𝑁 kí tự '.' và '#'.
Kết quả: ghi ra thiết bị xuất chuẩn chứa một số nguyên duy nhất là số thao tác ít
nhất cần thực hiện để trong xâu 𝑆 không có bất kì kí tự '.' nào ở ngay bên phải kí tự
'#'.
Ví dụ
INPUT OUTPUT Giải thích
3 1 Lật kí tự '#' đầu tiên để xâu
#. # trở thành "..#"
5 2 Lật hai ký tự '.' để trở thành
#. ##. "#####"
9 0 Không cần thực hiện thao tác
nào
… … …
Subtasks:
# Điểm Ràng buộc
1 50% 1 ≤ N ≤ 2.000
2 50% Không có ràng buộc bổ sung
Bình luận