題目描述
aw最近比較佛系,開始玩起了種田遊戲養生。aw在種田的時候遇到了乙個問題,在一塊 n×m 個方格的地圖上,他想圍一塊邊長為 k 的正方形土地當做西瓜田,但是每個方格的土地肥沃度 w 並不一樣,aw想圍出一塊肥沃度之和最大的土地,請你幫幫他。
輸入乙個整數t,表示t組測試資料。
對於每組測試資料,第一行三個整數n, m(1 <= n, m <= 500), k。含義如上所示並且k保證合法。
接下來有n行m列個正整數 w(0 <= w <= 1000),表示每塊土地的肥沃度。
輸出每組樣例兩個整數x, y。表示以地圖左上角方格為(1,1)開始的座標系中,西瓜田左上角的座標。(橫軸表示x,縱軸表示y)
如果有多個滿足題意的答案,輸出座標最小(先取x最小,x相同取y最小)的那個答案。
樣例輸入
2樣例輸出2 2 1
1 23 4
3 3 2
10 10 10
20 10 30
0 10 0
2 2這題正解是用二維字首和求的,邊讀入就能邊求出答案。dp[2 1
i][j]
就是從(1,1)
到(i,j)
的長方形中的資料之和,於是就能得出以
(i,j)
為右下角的正方形農田的肥沃度之和。
ac**:
#include using namespace std;
#define rld(x) scanf("%lld",&(x))
#define rd(x) scanf("%d",&(x))
#define sc scanf
#define pf printf
typedef long long ll;
const int n = 1e3+5;
ll dp[n][n];
int main(void)}}
}pf("%d %d\n", x, y);
}return 0;
}
二維字首和
時間限制 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 行第...