社区讨论
求调
灌水区参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @m6lm0xzb
- 此快照首次捕获于
- 2025/02/01 11:04 去年
- 此快照最后确认于
- 2025/02/01 19:43 去年
P1719
CPP#include <bits/stdc++.h>
using namespace std;
int arr[1000][1000];
int num[1000][1000] = {{0}};
int n = 0;
int ans = 0;
void Get_Num() {
for ( int i = 0 ; i < n ; i++ )
num[0][i] = 0;
for ( int i = 0 ; i < n ; i++ ){
num[i][0] = 0;
}
for ( int i = 0 ; i <= n ; i++ ){
for ( int j = 0 ; j <= n ; j++ ){
num[i][j] = arr[i][j];
}
}
for ( int i = 0 ; i < n ; i++ ){
for ( int j = 0 ; j < n ; j++ ){
num[i][j] = num[i][j] + num[i - 1][j] + num[i][j - 1] - num[i - 1][j - 1];
}
}
}
int Get_Ans(){
int max = 0;
int area_size = 0;
for ( int x1 = 0 ; x1 < n ; x1++ ){
for ( int y1 = 0 ; y1 < n ; y1++ ){
for ( int x2 = 0 ; x2 < n ; x2++ ){
for ( int y2 = 0 ; y2 < n ; y2++ ){
area_size = num[x2][y2] - num[x2][y1 - 1] - num[x1 - 1][y2] + num[x1 - 1][y1 - 1];
if(area_size > max){
max = area_size;
}
}
}
}
}
return max;
}
int main () {
cin >> n;
for ( int i = 0 ; i < n ; i++ ){
for ( int j = 0 ; j < n ; j++ ){
cin >> arr[i][j];
}
}
Get_Num();
ans = Get_Ans();
cout << ans;
return 0;
}
题目看这里
回复
共 0 条回复,欢迎继续交流。
正在加载回复...