Tổng XOR Vùng Hình Chữ Nhật
Xem dưới dạng PDF
Gửi bài giải
Điểm:
100
Giới hạn thời gian:
1.5s
Giới hạn bộ nhớ:
256M
đầu vào:
stdin
Đầu ra:
stdout
Tác giả:
Kiểu bài tập
Tèo đang chơi một trò chơi trí tuệ trên một bảng ma trận ô vuông kích thước \(N \times M\), hàng đánh số từ \(1\) đến \(N\), cột đánh số từ \(1\) đến \(M\). Ban đầu, giá trị số nguyên tại tất cả các ô trong ma trận đều bằng \(0\). Tèo thực hiện liên tiếp \(Q\) thao tác trên bảng ma trận:
1 x y val: Tèo gán hoặc cập nhật giá trị tại ô tọa độ \((x, y)\) bằng cách thực hiện phép toán XOR giá trị hiện tại của ô đó với số nguyên \(val\).2 x1 y1 x2 y2: Tèo yêu cầu tính phép XOR tổng hợp của toàn bộ các số nguyên nằm trong vùng hình chữ nhật từ hàng \(x_1\) đến hàng \(x_2\) và từ cột \(y_1\) đến cột \(y_2\).
Hãy lập trình chương trình tính nhanh kết quả trò chơi giúp Tèo.
Định dạng đầu vào
- Dòng đầu chứa ba số nguyên dương \(N, M\) và \(Q\) (\(1 \le N, M \le 1000\), \(1 \le Q \le 5 \cdot 10^4\)).
- \(Q\) dòng tiếp theo, mỗi dòng chứa thông tin của một thao tác theo định dạng trên (\(1 \le x, x_1, x_2 \le N\), \(1 \le y, y_1, y_2 \le M\), \(x_1 \le x_2\), \(y_1 \le y_2\), \(0 \le val \le 10^9\)).
Định dạng đầu ra
- Với mỗi thao tác loại
2, in ra kết quả phép XOR tổng hợp trên một dòng riêng biệt.
Ví dụ
Input:
3 3 3
1 1 1 5
1 2 2 12
2 1 1 2 2
Output:
9
Nhận xét