题目描述
在受到大画家毕加索的启发后,Vera 决定创造她的杰作。她有一张可以被简化成无限大的二维平面的画布。Vera 喜欢 2 的整数次幂 (1,2,4,8,16,...),并且将以 2 的整数幂为步长给一些点染色。
Vera 将会染 n 次,第 i 次染色可以用三个整数 xi,yi,vi 描述。令 ai 为最大的不大于 xi 的 2 的整数次幂,bi 为最大的不大于 yi 的 2 的整数次幂,Vera 会用第 vi 种颜色在所有坐标满足 (xi+aip,yi+biq) 的点上染色( p,q 为非负整数)。一个点可以被不同的颜色分别染多次,也可以被同种颜色重复染多次,一个点的颜色为所有染过这个点的颜色之和。
接下来 Vera 将提出 Q 个问题。对于第 j 个问题,她希望知道坐标为 (rj,cj) 的点是什么颜色。如果一个点没有被染过色,这个点的颜色就为 0。
因为你被迫做 Vera 的助手,你不得不回答 Vera 的问题。
输入格式
第一行包括两个整数 n,Q,用一个空格分隔。
接下来 n 行,每行三个空格隔开的整数 xi,yi,vi,表示用第 vi 种颜色进行题目中的染色操作,参数为 xi 和 yi。
再接下来 Q 行,每行两个空格隔开的整数 rj,cj,表示询问点 (rj,cj) 的颜色。
输出格式
输出共有 Q 行,每行一个整数,第 j 行的整数表示点 (rj,cj) 的颜色。
5 6
1 2 1
3 4 2
4 5 3
6 3 4
7 1 5
2 6
7 8
5 9
11 2
10 7
4 5
1
8
0
6
4
3
提示
样例解释
令颜色 1,2,3,4,5 分别为红色、蓝色、绿色、橙色和紫色。
令 p,q 为非负整数,则:
- 坐标为 (1+p,2+2q) 的点被染成了红色;
- 坐标为 (3+2p,4+4q) 的点被染成了蓝色;
- 坐标为 (4+4p,5+4q) 的点被染成了绿色;
- 坐标为 (6+4p,3+2q) 的点被染成了橙色;
- 坐标为 (7+4p,1+q) 的点被染成了紫色;
从 (0,0) 到 (11,11) 的坐标纸如图所示:
我们可以发现:
- (2,6) 被染成了红色,所以它的颜色为 1;
- (7,8) 被染成了红色、蓝色和紫色,所以它的颜色为 1+2+5=8;
- (5,9) 没有被染色,所以它的颜色为 0;
- (11,2) 被染成了红色和紫色,所以它的颜色为 1+5=6;
- (10,7) 被染成了橙色,所以它的颜色为 4;
- (4,5) 被染成了绿色,所以它的颜色为 3。
数据范围及约定
- 对于 20% 的数据,1≤n,Q≤2×103 ;
- 对于另外 20% 的数据,yi=1(1≤i≤n);
- 对于另外 20% 的数据,1≤n,Q≤105 且 1≤rj,cj≤109(1≤j≤Q)。
- 对于 100% 的数据,1≤n,Q≤2×105,i≤i≤n,1≤vi≤104,1≤xi,yi,rj,cj≤1018,1≤j≤Q。
由于评测机原因,改题只保留最后 10 个数据。
来源:CCO 2017 Day1「Vera and Modern Art」。
说明:翻译来自 LOJ。