天上的星星 容斥原理)

2021-08-27 05:48:12 字數 1094 閱讀 5509

在乙個星光摧殘的夜晚,蒜頭君一顆一顆的數這天上的星星。

蒜頭君給在天上巧妙的畫了乙個直角座標系,讓所有的星星都分布在第一象。天上有 nn 顆星星,他能知道每一顆星星的座標和亮度。

現在,蒜頭君問自己 qq 次,每次他問自己每個矩形區域的星星的亮度和是多少(包含邊界上的星星)。

輸入格式

第一行輸入乙個整數 n(1 \le n \le 50000)n(1≤n≤50000) 表示星星的數量。

接下裡 nn 行,每行輸入三個整數 x,y,w(0 \le x, y, w\le 2000)x,y,w(0≤x,y,w≤2000),表示在座標 (x,y)(x,y) 有一顆亮度為 ww 的星星。注意乙個點可能有多個星星。

接下來一行輸入乙個整數 q(1≤q≤50000),表示查詢的次數。

接下來 q 行,每行輸入四個整數 x1, y1, x2, y2,其中 (x1, y1) 表示查詢的矩形的左下角的座標,(x2, y2)表示查詢的矩形的右上角的座標,(0 ≤x1 ≤2000,0 ≤x2 ≤2000,0 ≤y1 ≤20000, 0 ≤y2 ≤2000)

輸出格式

對於每一次查詢,輸出一行乙個整數,表示查詢的矩形區域內的星星的亮度總和。

樣例輸入 複製

5 5 0 6

7 9 7

8 6 13

9 7 1

3 0 19

4 0 8 7 9

0 0 7 10

2 7 10 9

5 4 7 5

樣例輸出 複製

7 32 8 0

#include

#include

#include

using

namespace

std;

const

int n=3000;

int a[n][n], b[n][n], c[n][n];

int main()

for(i = 1; i < 2002; i++)

}scanf("%d", &q);

for(i = 0; i < q; i++)

return

0;}

bzoj4455 容斥原理 DP 小星星

description 小y是乙個心靈手巧的女孩子,她喜歡手工製作一些小飾品。她有n顆小星星,用m條彩色的細線串了起來,每條細 線連著兩顆小星星。有一天她發現,她的飾品被破壞了,很多細線都被拆掉了。這個飾品只剩下了n?1條細線,但 通過這些細線,這顆小星星還是被串在一起,也就是這些小星星通過這些細線...

容斥原理 數論

兩個集合的容斥關係公式 a b a b a b a b 重合的部分 三個集合的容斥關係公式 a b c a b c a b b c c a a b c 最後可以推廣到n個集合,集合裡的元素為奇數則加,偶數減 hdu 4135 很簡單,直接求出所有的質因子,然後容斥解決 author crystal ...

容斥原理,反演

大概知道為什麼自己水平比較渣啦。一開始只會反演,然後被容斥驚豔到。然後寫了一段時間容斥,反演忘光光。所以融會貫通真的很難。多校的三道題,當時是用反演做的。事實上以前就知道容斥跟莫比烏斯函式值的關係,然後熟練掌握 然後一段時間沒用就忘了哈。簡單來說就是,求乙個數和乙個集合中的數互質的個數,把集合中乙個...