Part2 8 P3397 地毯 二維差分

2022-10-09 05:09:09 字數 540 閱讀 2620

題意:在 n × n的格仔上有 m個地毯。

給出這些地毯的資訊,問每個點被多少個地毯覆蓋。

思路:二維差分優化使區間修改複雜度變為o(1),最後再求二維字首和

評價:二維差分板子

1 #include2

using

namespace

std;3//

#define mod 9982443534//

const int inf = 1e8;

5 typedef long

long

ll;6

int n,m,a[1005][1005],b[1005][1005];7

void insert(int x1,int y1,int x2,int y2,intc)8

14int

main()

1523

for(int i=1;i<=n;i++)

2430 printf("\n"

);31}32

return0;

33 }

P3397 地毯(二維差分)

題意 在乙個n n的地圖中,有m張地毯,每張矩形地毯的左上角和右下角已知,輸出最後整個地圖的每個點有多少張地毯覆蓋。思路 二維差分很明顯。二維字首和 二維線段樹也可以做。我們首先要用乙個陣列,記錄變化。對於 x1,y1 到 x2,y2 這一區間全部加1的話,我們需要a x1 y1 1,a x2 1 ...

洛谷 P3397 地毯(二維差分)

題目描述 在n n的格仔上有m個地毯。給出這些地毯的資訊,問每個點被多少個地毯覆蓋。輸入格式 第一行,兩個正整數n m。意義如題所述。接下來m行,每行兩個座標 x1,y1 和 x2,y2 代表一塊地毯,左上角是 x1,y1 右下角是 x2,y2 輸出格式 輸出n行,每行n個正整數。第i行第j列的正整...

洛谷P3397 地毯 二維字首和

題目鏈結 本文再次講解二維字首和。首先我們來看一維字首和。給定乙個序列,在序列上進行區間加減,怎麼做呢?我們需要引入差分陣列。例如原序列為 0,0,0,0,0,0,0 在 1,3 上加1,則差分陣列上就變成了 0,1,0,0,1,0,0 然後對差分陣列求字首和,我們發現,其字首和陣列為 0,1,1,...