[CQOI2017] 老C的任务
题目描述
老C是个程序员。
最近老C从老板那里接到了一个任务——给城市中的手机基站写个管理系统。作为经验丰富的程序员,老C轻松地完成了系统的大部分功能,并把其中一个功能交给你来实现。
由于一个基站的面积相对于整个城市面积来说非常的小,因此每个的基站都可以看作坐标系中的一个点,其位置可以用坐标(x,y)来表示。此外,每个基站还有很多属性,例如高度、功率等。运营商经常会划定一个区域,并查询区域中所有基站的信息。
现在你需要实现的功能就是,对于一个给定的矩形区域,回答该区域中(包括区域边界上的)所有基站的功率总和。如果区域中没有任何基站,则回答0。
输入输出格式
输入格式
第一行两个整数n,m,表示一共有n个基站和m次查询。接下来一共有n行,每行由$x_i,y_i,p_i$三个空格隔开的整数构成,表示一个基站的坐标$(x_i,y_i)$和功率$p_i$。不会有两个基站位于同一坐标。
接下来一共有m行,每行由$x1_j,y1_j,x2_j,y2_j$四个空格隔开的整数构成,表示一次查询的矩形区域。该矩形对角坐标为$(x1_j,y1_j)$和$(x2_j,y2_j)$,且4边与坐标轴平行。
输出格式
输出m行,每行一个整数,对应每次查询的结果。
输入输出样例
输入样例 #1
4 2
0 0 1
0 1 2
2 2 4
1 0 8
0 0 1 1
1 1 5 6
输出样例 #1
11
4
输入样例 #2
3 2
-100 0 16
1 -10 32
1000 100 64
0 0 0 1
-1000 -1000 10000 10000
输出样例 #2
0
112
说明
对于第1~2个测试点,1≤n,m≤100;
对于第3~5个测试点,1≤n≤50000,1≤m≤10000;
对于第6~10个测试点,1≤n≤100000,1≤m≤100000,数据有梯度;
对于所有测试点,$-2^{31}\le x_i,y_i,p_i,x1_j,y1_j,x2_j,y2_j<2^{31},x1_j\le x2_j,y1_j\le y2_j$。