Mảng may mắn
Đề bài
Mô tả
Cho mảng gồm phần tử, ban đầu tất cả đều bằng . Chỉ số bắt đầu từ .
Cho ma trận kích thước , các phần tử chỉ là hoặc . Cặp có thứ tự với được gọi là tốt nếu . Lưu ý ma trận không cần đối xứng, và cặp có thứ tự nên khác .
Mảng (sau khi đã thay thế) được gọi là may mắn nếu với mọi , cặp là tốt.
Có truy vấn, mỗi truy vấn là hai số nguyên : gán (với ; giá trị có nghĩa vị trí trở lại giá trị ).
Sau mỗi truy vấn, hãy đếm số cách thay thế tất cả các vị trí đang mang giá trị trong mảng bằng số nguyên trong sao cho mảng thu được là may mắn. Các vị trí khác nhau có thể được thay bằng số khác nhau. Vì đáp án có thể lớn, in ra phần dư khi chia cho .
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và .
- Ba dòng tiếp theo mô tả ma trận : dòng thứ chứa ba số .
- dòng tiếp theo, dòng thứ chứa hai số nguyên .
Dữ liệu ra
In ra số nguyên, mỗi số trên một dòng: đáp án sau truy vấn thứ .
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 10 1 1 0 1 0 0 1 1 1 1 1 1 3 2 2 3 0 2 1 3 0 3 1 2 0 3 1 1 0 |
3 6 1 1 2 2 1 3 3 6 |
Sau truy vấn đầu : các cách hợp lệ là , , , nên có cách. |
| 2 3 1 1 0 0 1 0 1 1 1 1 0 2 2 1 3 |
6 3 1 |
Ban đầu : cả 6 cặp với đều hợp lệ, nên có cách. Sau truy vấn : , chỉ còn cách với . |
Bình luận