Bật đèn theo tiền tố
Đề bài
Mô tả
Có bóng đèn xếp thành một hàng, đánh số từ đến . Mỗi bóng đèn ban đầu ở trạng thái tắt () hoặc bật ().
Cho tập con của , thỏa mãn điều kiện: giao của ba tập con bất kỳ luôn rỗng. Nói cách khác, với mọi thì (tức là mỗi bóng đèn thuộc nhiều nhất hai tập con).
Trong một thao tác, bạn chọn một tập con và đảo trạng thái của tất cả các bóng đèn thuộc (đèn đang bật thành tắt và ngược lại).
Dữ liệu đảm bảo rằng với các tập con đã cho, luôn có thể thực hiện một số thao tác để bật đồng thời tất cả các bóng đèn.
Gọi là số thao tác ít nhất cần thực hiện để bóng đèn đầu tiên đồng thời được bật. Lưu ý rằng không có ràng buộc nào về trạng thái của các bóng đèn còn lại (từ đến ), chúng có thể bật hoặc tắt tùy ý.
Hãy tính với mọi .
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và .
- Dòng thứ hai chứa một xâu nhị phân độ dài mô tả trạng thái ban đầu của các bóng đèn (bóng tắt nếu ký tự thứ là , bật nếu là ).
- Tiếp theo là mô tả của tập con. Mô tả của mỗi tập con gồm:
- Một dòng chứa số nguyên () là số phần tử của tập con.
- Một dòng chứa số nguyên phân biệt () là các phần tử của tập con.
Dữ liệu ra
In ra dòng, dòng thứ chứa một số nguyên : số thao tác ít nhất để bật đồng thời các bóng đèn từ đến .
Ràng buộc
- Giao của ba tập con bất kỳ luôn rỗng.
- Luôn tồn tại cách bật đồng thời toàn bộ các bóng đèn.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 3 00011 3 1 2 3 1 4 3 3 4 5 |
1 1 1 1 1 |
Chỉ cần thực hiện thao tác trên tập là đủ để bật các bóng đến theo yêu cầu ở mọi tiền tố. |
| 7 3 0011100 3 1 4 6 3 3 4 7 2 2 3 |
1 2 3 3 3 3 3 |
Với dùng ; với dùng ; với dùng cả . |
Bình luận