Dãy đèn
Đề bài
Mô tả
Giáng sinh năm nay, khu phố VOI được trang trí bởi một dàn bóng đèn, các bóng đèn được đánh số từ đến . Ban đầu, mỗi bóng đèn ở một trong 3 trạng thái: tắt, vàng hoặc đỏ. Mỗi bóng đèn được điều khiển bởi một công tắc vòng tròn hoạt động như sau:
- Khi xoay theo chiều kim đồng hồ một nấc, trạng thái bóng đèn thay đổi:
- Nếu đang tắt chuyển sang vàng.
- Nếu đang vàng chuyển sang đỏ.
- Nếu đang đỏ chuyển sang tắt.
- Khi xoay ngược chiều kim đồng hồ một nấc, trạng thái bóng đèn thay đổi:
- Nếu đang tắt chuyển sang đỏ.
- Nếu đang đỏ chuyển sang vàng.
- Nếu đang vàng chuyển sang tắt.
Ban quản trị VOI nhận được yêu cầu khảo sát. Mỗi yêu cầu gồm hai giá trị và với . Cụ thể, mỗi yêu cầu cần tìm một dãy các thao tác để đưa tất cả các bóng đèn từ đến về trạng thái tắt. Mỗi thao tác được thực hiện như sau: chọn bóng đèn phân biệt trong đoạn từ đến , trong đó:
- bóng đèn để xoay công tắc theo chiều kim đồng hồ một nấc.
- bóng đèn còn lại để xoay công tắc ngược chiều kim đồng hồ một nấc.
Lưu ý: Các yêu cầu khảo sát là độc lập, nghĩa là mỗi yêu cầu đều được xử lý trên trạng thái ban đầu của dãy đèn. Giá trị và cố định cho tất cả yêu cầu. Các công tắc vòng tròn có thể xoay không giới hạn theo cả hai chiều.
Yêu cầu: Với mỗi yêu cầu khảo sát, hãy tìm số thao tác ít nhất để đưa toàn bộ các bóng đèn trong đoạn từ đến về trạng thái tắt.
Dữ liệu vào
- Dòng đầu tiên chứa 4 số nguyên không âm .
- Dòng thứ hai chứa số nguyên, số thứ có giá trị , hoặc tương ứng với trạng thái ban đầu của bóng đèn thứ là tắt, vàng hoặc đỏ .
- Mỗi dòng trong số dòng tiếp theo chứa hai số nguyên dương và mô tả một yêu cầu. Dữ liệu bảo đảm trong tất cả các yêu cầu.
Dữ liệu ra
Gồm dòng, mỗi dòng một số nguyên là số lượng thao tác ít nhất tìm được cho yêu cầu khảo sát tương ứng hoặc nếu không tồn tại phương án.
Ràng buộc
- ; ; ; .
- Trạng thái mỗi bóng đèn là , hoặc .
- Mỗi yêu cầu: và .
Subtasks
- Subtask 1 ( số điểm): ; ; .
- Subtask 2 ( số điểm): ; .
- Subtask 3 ( số điểm): .
- Subtask 4 ( số điểm): Không có ràng buộc gì thêm.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 3 1 1 2 2 2 2 1 1 5 2 4 3 5 |
3 2 -1 |
Yêu cầu thứ nhất cần ít nhất thao tác, chẳng hạn: xoay đèn theo chiều kim đồng hồ và đèn ngược chiều, được ; xoay đèn theo chiều kim đồng hồ và đèn ngược chiều, được ; xoay đèn theo chiều kim đồng hồ và đèn ngược chiều, được . Với yêu cầu thứ ba, không có cách nào tắt được cả ba đèn . |
| 6 1 1 1 2 0 1 2 2 2 1 6 |
3 | Ví dụ bổ sung (không có trong đề gốc). Một cách dùng thao tác: xoay đèn theo chiều kim đồng hồ và đèn ngược chiều, được ; xoay đèn theo chiều kim đồng hồ và đèn ngược chiều, được ; xoay đèn theo chiều kim đồng hồ và đèn ngược chiều, được . |
Bình luận