Skip to content

Latest commit

 

History

History

2847

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

题目

$C$ 是个程序员。

最近老 $C$ 从老板那里接到了一个任务——给城市中的手机基站写个管理系统。

作为经验丰富的程序员,老 $C$ 轻松地完成了系统的大部分功能,并把其中一个功能交给你来实现。

由于一个基站的面积相对于整个城市面积来说非常的小,因此每个的基站都可以看作坐标系中的一个点,其位置可以用坐标 $(x,y)$ 来表示。

此外,每个基站还有很多属性,例如高度、功率等。

运营商经常会划定一个区域,并查询区域中所有基站的信息。

现在你需要实现的功能就是,对于一个给定的矩形区域,回答该区域中(包括区域边界上的)所有基站的功率总和。

如果区域中没有任何基站,则回答 $0$

输入格式

第一行两个整数 $n, m$,表示一共有 $n$ 个基站和 $m$ 次查询。

接下来一共有 $n$ 行,每行由 $x_i , y_i , p_i$ 三个空格隔开的整数构成,表示一个基站的坐标 $(x_i, y_i)$ 和功率 $p_i$。不会有两个基站位于同一坐标。

接下来一共有 $m$ 行,每行由 $x_{1j},y_{1j},x_{2j},y_{2j}$ 四个空格隔开的整数构成,表示一次查询的矩形区域。该矩形对角坐标为 $(x_{1j} , y_{1j})$$(x_{2j} , y_{2j})$,且 $4$ 边与坐标轴平行。

输出格式

输出 $m$ 行,每行一个整数,对应每次查询的结果。

数据范围

$1 \le n,m \le 10^5$,

$-2^{31} ≤ x_i,y_i,p_i,x_{1j},y_{1j},x_{2j},y_{2j} < 2^{31}$,

$x_{1j} ≤ x_{2j}, y_{1j} ≤ y_{2j}$

输入样例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

题解