學習了字首和,又想來搞二維字首和了……
二維字首和:建立乙個矩陣,求矩陣內子矩陣內所有數的和。
下面給乙個n×m的矩陣,給定左上角座標(x1,y1)和右下角座標,求右下角座標(x2,y2),求子矩陣內元素的和。
讓我們先初始化乙個二維陣列,並讀入一些資料,下面是**和輸出:
int a[11][11],s[11][11];memset(a,0,sizeof(a));
memset(s,0,sizeof(s));
for(int i=1;i<=10;i++)
cout
<
}
輸出:14那麼現在來建立二維字首和陣列s,然後來求字首和,但如果用暴力,那麼時間複雜度較高,可以思考一下怎麼樣簡化問題。9162536
4964
8110014
9162536
4964
8110014
9162536
4964
8110014
9162536
4964
8110014
9162536
4964
8110014
9162536
4964
8110014
9162536
4964
8110014
9162536
4964
8110014
9162536
4964
8110014
9162536
4964
81100
那麼就可以開始寫程式了:
for(int i=1;i<=10;i++)cout
<
}
輸出:151430
5591
140204
285385210
2860
110182
280408
570770315
4290
165273
420612
8551155420
56120
220364
560816
1140
1540525
70150
275455
7001020
1425
1925630
84180
330546
8401224
1710
2310735
98210
385637
9801428
1995
2695840
112240
440728
1120
1632
2280
3080945
126270
495819
1260
1836
2565
3465
1050
140300
550910
1400
2040
2850
3850
二維字首和
時間限制 1 sec 記憶體限制 128 mb 提交 155 解決 51 提交 狀態 討論版 命題人 admin 題目描述 一種新型的雷射炸彈,可以摧毀乙個邊長為r的正方形內的所有的目標。現在地圖上有n n 10000 個目標,用整數xi,yi 0 xi,yi 5000 表示目標在地圖上的位置,每個...
二維字首和
1 二維字首和 模板 二維字首和 模板題 acwing 796.子矩陣的和 s i,j 第i行j列格仔左上部分所有元素的和 1.以 x1,y1 為左上角,x2,y2 為右下角的子矩陣的和為 s x2 y2 s x1 1 y2 s x2 y1 1 s x1 1 y1 1 s x y s x y 1 s...
二維字首和
直接看乙個例子 假設給定乙個矩陣 1 2 4 3 5 1 2 4 6 3 5 9 那麼,可以推出他的二維字首和矩陣為 1 3 7 10 691522 121829 45 在二維字首和陣列中,9 1 2 5 1 15 1 2 5 1 4 2 18 1 5 6 2 1 3 即二位字首和陣列中第 i 行第...