Thanh tích điện cân bằng
Đề bài
Mô tả
Cho một dãy gồm thanh tích điện, đánh số từ đến . Thanh thứ mang điện tích bằng (ký hiệu là dấu +) hoặc (ký hiệu là dấu -).
Với một đoạn thanh liên tiếp, ta định nghĩa tổng đan dấu của đoạn đó là tổng các điện tích, trong đó thanh đầu tiên của đoạn lấy dấu cộng, thanh thứ hai lấy dấu trừ, thanh thứ ba lấy dấu cộng, và cứ thế xen kẽ. Nghĩa là với đoạn gồm các thanh có điện tích (theo thứ tự), tổng đan dấu là:
Đoạn được gọi là cân bằng nếu tổng đan dấu của nó bằng . Một đoạn rỗng (không còn thanh nào) cũng được coi là cân bằng.
Có truy vấn. Mỗi truy vấn cho hai số và : xét đoạn gồm các thanh từ vị trí đến . Bạn được phép bỏ đi một số thanh bất kỳ trong đoạn này (các thanh còn lại giữ nguyên thứ tự và việc tính tổng đan dấu được làm lại từ đầu trên các thanh còn lại). Hãy tìm số thanh ít nhất cần bỏ để đoạn còn lại trở nên cân bằng.
Dữ liệu vào
- Dòng đầu chứa số nguyên — số bộ dữ liệu.
- Với mỗi bộ:
- Dòng đầu chứa hai số nguyên và .
- Dòng thứ hai chứa xâu độ dài gồm các ký tự
+và-, mô tả điện tích các thanh. - dòng tiếp theo, mỗi dòng chứa hai số nguyên và mô tả một truy vấn.
Dữ liệu ra
Với mỗi truy vấn, in ra trên một dòng số thanh ít nhất cần bỏ.
Ràng buộc
- Tổng trên tất cả các bộ không vượt quá .
- Tổng trên tất cả các bộ không vượt quá .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 14 1 +--++---++-++- 1 14 14 3 +--++---+++--- 1 14 6 12 3 10 4 10 +-+- 1 1 1 2 1 3 1 4 2 2 2 3 2 4 3 3 3 4 4 4 |
2 2 1 0 1 2 1 2 1 2 1 1 2 1 |
Bộ 1, truy vấn : bỏ thanh là đủ. Bộ 2, truy vấn có độ dài lẻ nên chỉ cần bỏ thanh; truy vấn đã cân bằng sẵn nên không cần bỏ. Bộ 3 (xâu +-+-): các đoạn độ dài lẻ cần bỏ , đoạn và cần bỏ , đoạn đã cân bằng. |
| 3 2 1 ++ 1 2 2 1 +- 1 2 1 1 - 1 1 |
0 2 1 |
Đoạn ++ lấy dấu xen kẽ là nên đã cân bằng. Đoạn +- cho , độ dài chẵn nên cần bỏ thanh. Đoạn - có độ dài lẻ, cần bỏ thanh. |
Bình luận