1224:最大子矩阵

最大子矩阵

用的方法应该叫并查集。

更恰当的题目应当是相邻最大子矩阵

 1 #include<iostream>
 2 using namespace std;
 3 
 4 const int N=105;
 5 int a[N][N];
 6 int main(){
 7     int n,maxx=-1000000000;
 8     cin>>n;
 9     for(int i=1;i<=n;i++)
10         for(int j=1;j<=n;j++){
11             cin>>a[i][j];
12             a[i][j]+=a[i][j-1];
13         }
14     for(int i=0;i<n;i++){
15         for(int j=i+1;j<=n;j++){
16             int ans=0;
17             for(int k=1;k<=n;k++){
18                 ans+=a[k][j]-a[k][i];
19                 if(ans>maxx)maxx=ans;
20                 if(ans<0)ans=0;
21             }
22         }
23     }
24     cout<<maxx;
25     return 0;
26 }

 

posted @ 2021-08-10 18:05  Rekord  阅读(388)  评论(0编辑  收藏  举报