Clue Contest 08 - Tổng bảng con
Xem dạng PDFHôm nay, em gái của Bob - tên Alice, vừa tròn bảy tuổi. Chính vì thế, hôm nay, Bob quyết định "tặng" một món quà sinh nhật rất ý nghĩa với Alice - chính là dạy em mình cách tính tổng các số trong phạm vi 100.
Thế nhưng, để bài học đỡ nhàm chán hơn, anh sẽ biến bài giảng của mình thành một tiết có thể vừa chơi, vừa học. Bob cho Alice một chiếc bảng như sau:

Khi anh hô bốn giá trị (với hai giá trị đầu (~i, j~) là tọa độ góc trái trên của bảng con, và (~k, l~) là tọa độ góc phải dưới của bảng con), thì Alice phải tính tổng tất cả các giá trị trong bảng con từ dữ kiện mà anh trai mình cho trước. Ví dụ: Nếu Bob muốn tìm giá trị từ (~1, 1~) đến (~3, 3~) thì Alice phải đưa đáp án là ~108~ (vì ~1 + 2 + 3 + 11 + 12 + 13 + 21 + 22 + 23 = 108~).
Chơi với Alice một hồi, Bob nhận ra rằng bài toán này có thể xây dựng dưới dạng tổng quát. Bài toán ấy như sau:
Cho một bảng có kích thước ~m \times n~, đánh số từ 1 đến ~m \times n~ theo thứ tự lần lượt từ trái sang phải, từ trên xuống dưới. Alice có ~q~ lượt chơi. Với mỗi lượt chơi, Bob sẽ đưa ra 4 số ~i, j, k, l~ với (~i, j~) là tọa độ góc trái trên của bảng con, và (~k, l~) là góc phải dưới của bảng con. Nhiệm vụ của Alice là với mỗi lượt chơi, cô phải đưa ra chính xác tổng tất cả giá trị trong bảng con từ dữ kiện mà anh trai mình cho trước.
Input
- Dòng đầu tiên nhập vào hai số nguyên dương ~m, n~ (~1 \le m, n \le 10^9~) với ~m~ là số hàng của bảng, ~n~ là số cột của bảng.
- Dòng tiếp theo nhập vào số nguyên dương ~q~ (~1 \le q \le 10^6~).
- ~q~ dòng tiếp theo, mỗi dòng bao gồm bốn số ~i~ ~j~ ~k~ ~l~ (~1 \le i \le k \le m~, ~1 \le j \le l \le n~), với (~i, j~) là tọa độ góc trái trên của bảng con, và (~k, l~) là góc phải dưới của bảng con.
Output
Để giảm kích thước đầu ra:
- Gọi ~ans_i~ là đáp án của Alice đưa ra khi chia dư cho ~10^9 + 21~.
- Hãy in ra ~ans_1~ ~XOR~ ~ans_2~ ~XOR~ ~ans_3~ ~XOR~ ... ~XOR~ ~ans_q~.
Sample Input
10 10
2
1 1 3 3
2 2 2 3
Sample Output
117
Giải thích: Ở ví dụ thứ hai, Alice sẽ tính ~12 + 13 = 25~.
Bình luận