#645. NOIP2014TG-28
NOIP2014TG-28
当前没有测试数据。
28.(完善程序)
(最大子矩阵和)给出 行 列的整数矩阵,求最大的子矩阵和(子矩阵不能为空)。
输入第一行包含两个整数 和 ,即矩阵的行数和列数。之后 行,每行 个整数,描述整个矩阵。程序最终输出最大的子矩阵和。
(第一空 分,其余 分,共 分)
#include<iostream>
using namespace std;
const int SIZE=100;
int matrix[SIZE+1][SIZE+1];
int rowsum[SIZE+1][SIZE+1]; //rowsum[i][j]记录第i行前j个数的和
int m,n,i,j,first,last,area,ans;
int main(){
cin>>m>>n;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
cin>>matrix[i][j];
ans=matrix____________________;
for(i=1;i<=m;i++)
____________________;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
rowsum[i][j]=____________________;
for(first=1;first<=n;first++)
for(last=first;last<=n;last++){
____________________;
for(i=1;i<=m;i++){
area+=____________________;
if(area>ans)
ans=area;
if(area<0)
area=0;
}
}
cout<<ans<<endl;
return 0;
}
①:{{ input(1) }}
②:{{ input(2) }}
③:{{ input(3) }}
④:{{ input(4) }}
⑤:{{ input(5) }}