Bài 3: Phân loại (TS10 - Chuyên Tin - Hồ Chí Minh)
Xem PDF
Điểm:
1600
Thời gian:
1.0s
Bộ nhớ:
256M
Input:
PHANLOAI.INP
Output:
PHANLOAI.OUT
Cho một xâu kí tự \(S\) chỉ gồm các kí tự thuộc tập \(\text{T,R,M}\). Ta được phép thực hiện thao tác sau một số lần (có thể không thực hiện lần nào): Chọn hai vị trí phân biệt \(x,y\) (\(1\le x,y\le |S|\)), rồi hoán đổi hai kí tự ở hai vị trí này cho nhau.
Một xâu được gọi là hợp lệ nếu các kí tự giống nhau luôn nằm liền tiếp nhau. Nói cách khác, mỗi loại kí tự xuất hiện trong nhiều nhất một đoạn liên tục duy nhất trên xâu.
Yêu cầu: Tính số thao tác hoán đổi ít nhất cần thực hiện để biến xâu \(S\) thành một xâu hợp lệ.
Input
Từ tập tin PHANLOAI.INP gồm:
- Dòng đầu tiên chứa \(n\) - chứa độ dài xâu kí tự (\(1\le n\le 10^5\))
- Dòng thứ hai chứa xâu kí tự \(S\) chỉ gồm các kí tự thuộc tập \(\text{T,R,M}\).
Output
- Ghi ra tập tin
PHANLOAI.OUTmột số nguyên duy nhất là số thao tác hoán đổi ít nhất cần thực hiện.
Example
Test 1
Input
6
TRTTMM
Output
1
Note
Hoán đổi vị trí \(2\) và \(4\) ta được xâu TTTRMM thỏa mãn: TTT | R | MM.
Test 2
Input
4
TTRR
Output
0
Scoring
- Subtask \(1\) (\(40\%\)): Chỉ có ký tự
TvàR, \(n\le 1000\). - Subtask \(2\) (\(30\%\)): Chỉ có ký tự
TvàR, \(n\le 10^5\) - Subtask \(3\) (\(30\%\)): Không có ràng buộc thêm.
Kỳ thi:
- TS10 - Hồ Chí Minh (Đề Sở) - Môn: Tin học (Test tự sinh) (2 Tháng sáu, 2026)
Bình luận