Cho dãy số a1,a2,...,an và q thao tác thuộc 1 trong 2 loại sau:
1 k b: gán ak=b
2 l r: Tính số lương tập con {k1,k2,...,km} khác rỗng của tập {l,l+1,...,r} sao cho ak1+ak2+...+akm là số chẵn.
Yêu cầu: Với thao tác loại 2, hãy in ra số dư của kết quả khi chia cho 109+7.
Dữ liệu
Kết quả: Với mỗi thao tác loại 2, in ra số lượng tập con thỏa mãn (mod 109+7) trên một dòng.
Ví dụ
Input |
Output |
5 6 2 4 6 8 10 2 1 3 2 4 4 2 4 5 1 4 7 2 4 4 2 4 5 |
7 1 3 0 1 |
Giới hạn: