JOI 2020 - Monochrome Points
Xem PDFTrên một đường tròn có \(2N\) điểm được đánh số từ \(1\) đến \(2N\) theo chiều kim đồng hồ. Mỗi điểm có màu trắng hoặc đen; có đúng \(N\) điểm trắng và \(N\) điểm đen.
Ta sẽ vẽ \(N\) đoạn thẳng nối các điểm này sao cho:
- Mỗi điểm là đầu mút của đúng một đoạn thẳng.
- Mỗi đoạn thẳng nối một điểm trắng với một điểm đen.
Số cặp đoạn thẳng giao nhau trong \(N\) đoạn thẳng được gọi là số giao cắt. Cho thông tin về màu của các điểm, hãy tính số giao cắt lớn nhất có thể đạt được khi vẽ \(N\) đoạn thẳng thỏa mãn các điều kiện trên.
Dữ liệu vào
Đọc dữ liệu từ đầu vào chuẩn:
- Dòng đầu chứa số nguyên \(N\).
- Dòng thứ hai chứa xâu \(S\) có độ dài \(2N\), mô tả màu của các điểm. Mỗi ký tự của \(S\) là
BhoặcW. Ký tự thứ \(i\) (\(1 \le i \le 2N\)) làBnếu điểm thứ \(i\) màu đen, và làWnếu điểm đó màu trắng.
Dữ liệu ra
Ghi ra đầu ra chuẩn một dòng chứa số giao cắt lớn nhất có thể đạt được khi vẽ \(N\) đoạn thẳng thỏa mãn các điều kiện đã cho.
Ràng buộc
- \(1 \le N \le 200000\).
- \(S\) có độ dài \(2N\), chỉ gồm các ký tự
BvàW. - Trong \(S\), ký tự
Bxuất hiện đúng \(N\) lần và ký tựWxuất hiện đúng \(N\) lần.
Phân nhóm
Mọi phân nhóm đều thỏa mãn toàn bộ ràng buộc ở trên.
- 4 điểm: \(N \le 8\).
- 21 điểm: \(N \le 300\).
- 10 điểm: \(N \le 2000\).
- 65 điểm: Không có ràng buộc bổ sung.
Ví dụ
Ví dụ 1
Input
3
BBWWBW
Output
2
Ví dụ 2
Input
5
BWBWBBWBWW
Output
8
Ví dụ 3
Input
10
WBBBWBBWWBWWBWWBWBWB
Output
41
Ví dụ 4
Input
16
WWWBWBBBBWWBWWBWWBBWWBBBWBBBWWBW
Output
105
Nguồn
JOI Open Contest 2020, bài 2. Bản dịch từ đề tiếng Anh chính thức của Ủy ban Olympic Tin học Nhật Bản (JCIOI), theo giấy phép CC BY-SA 4.0.
Kỳ thi:
- JOI 2020 - Kỳ thi mở rộng (6 Tháng 9., 2020)

Bình luận