#SGM0000006. Xenia và các phép toán bit (Xenia and Bit Operations)
Xenia và các phép toán bit (Xenia and Bit Operations)
Xenia và các phép toán bit (Xenia and Bit Operations)
Nguồn: Codeforces
Phiên bản: Phước Hưng OJ Extended
Đề bài
Có dãy gồm số nguyên không âm. Từ dãy hiện tại, ở tầng đầu tiên ghép từng cặp kề nhau bằng phép OR bit; tầng tiếp theo ghép bằng XOR bit; sau đó tiếp tục luân phiên OR và XOR cho đến khi chỉ còn một giá trị . Có lần cập nhật một phần tử. Sau mỗi lần cập nhật, hãy in giá trị mới.
Input
- Dòng đầu chứa và .
- Dòng thứ hai chứa số với .
- Mỗi trong dòng tiếp theo chứa và , nghĩa là gán , với và .
Output
Sau mỗi lần cập nhật, in giá trị của toàn dãy trên một dòng.
Subtask
- Subtask 1 — 20%: , .
- Subtask 2 — 30%: , .
- Subtask 3 — 50%: , .
Ví dụ
Input
2 4
1 6 3 5
1 4
3 4
1 2
1 2
Output
1
3
3
3
Giải thích
Với , tầng sát dãy dùng OR và tầng gốc dùng XOR. Sau cập nhật đầu tiên, dãy là : hai giá trị trung gian là và , nên . Các cập nhật sau lần lượt cho các giá trị .