在乙個星光摧殘的夜晚,蒜頭君一顆一顆的數這天上的星星。
蒜頭君給在天上巧妙的畫了乙個直角座標系,讓所有的星星都分布在第一象。天上有 n
n 顆星星,他能知道每一顆星星的座標和亮度。
現在,蒜頭君問自己 q
q 次,每次他問自己每個矩形區域的星星的亮度和是多少(包含邊界上的星星)。
第一行輸入乙個整數 n(1 \le n \le 50000)n(
1≤n≤
5000
0)表示星星的數量。
接下裡 n
n 行,每行輸入三個整數 x,y,w(0 \le x, y, w\le 2000)x,
y,w(
0≤x,
y,w≤
2000
),表示在座標 (x,y)(x
,y) 有一顆亮度為 w
w 的星星。注意乙個點可能有多個星星。
接下來一行輸入乙個整數 q(1 \le q \le 50000)q(
1≤q≤
5000
0),表示查詢的次數。
接下來 q
q 行,每行輸入四個整數 x_1, y_1, x_2, y_2x1
,y1
,x2
,y2
,其中 (x_1, y_1)(x
1,y
1) 表示查詢的矩形的左下角的座標,(x_2, y_2)(x
2,y
2) 表示查詢的矩形的右上角的座標,0 \le x_1 \le x_2 \le 20000≤
x1≤
x2≤
2000
,0 \le y_1 \le y_2 \le 20000≤
y1≤
y2≤
2000
。對於每一次查詢,輸出一行乙個整數,表示查詢的矩形區域內的星星的亮度總和。
樣例輸入
5樣例輸出5 0 6
7 9 7
8 6 13
9 7 1
3 0 19
40 8 7 9
0 0 7 10
2 7 10 9
5 4 7 5
73280
#include#include#includeusing namespace std;
int a[2010][2010];
int map[2010][2010];
int main()
{ int i,j,q,n,x1,x2,y1,y2,x,y,w;
scanf("%d",&n);
memset(map,0,sizeof(map));
for(i=0;i
計蒜客 天上的星星
傳送門 在乙個星光摧殘的夜晚,蒜頭君一顆一顆的數這天上的星星。蒜頭君給在天上巧妙的畫了乙個直角座標系,讓所有的星星都分布在第一象。天上有 n n 顆星星,他能知道每一顆星星的座標和亮度。現在,蒜頭君問自己 q 次,每次他問自己每個矩形區域的星星的亮度和是多少 包含邊界上的星星 第一行輸入乙個整數 n...
計蒜客 天上的星星(字首和)
天上星星 在乙個星光摧殘的夜晚,蒜頭君一顆一顆的數這天上的星星。蒜頭君給在天上巧妙的畫了乙個直角座標系,讓所有的星星都分布在第一象。天上有 nn 顆星星,他能知道每一顆星星的座標和亮度。現在,蒜頭君問自己 qq 次,每次他問自己每個矩形區域的星星的亮度和是多少 包含邊界上的星星 輸入格式 第一行輸入...
計蒜客 天上的星星 字首和
在乙個星光摧殘的夜晚,蒜頭君一顆一顆的數這天上的星星。蒜頭君給在天上巧妙的畫了乙個直角座標系,讓所有的星星都分布在第一象。天上有 nn 顆星星,他能知道每一顆星星的座標和亮度。現在,蒜頭君問自己 qq 次,每次他問自己每個矩形區域的星星的亮度和是多少 包含邊界上的星星 輸入格式 第一行輸入乙個整數 ...