标签:
由于上次二位数组,使用了函数,所以这次只要修改函数就可以了。
//Powered by lzr! #include<iostream> using namespace std; int yiwei_max(int n,int a[]) { int temp=0,sum=-999999999; int j=0,k=0,i; for(i=0;i<n;i++) { if(temp>0) { temp+=a[i]; } else { temp=a[i]; if(a[i]>0 && k==0) k=i; } if(temp>sum) { sum=temp; } if(i==n-1 && j==0) { i=-1; j=1; n=k; } } return sum; } void main() { int i,j,k,m,n; int a[100][100]; int b[100]; int temp=0,sum=-99999999; cout<<"几行几列?"<<endl; cin>>m>>n; for(int i=0;i<m;i++) { for(int j=0;j<n;j++) { cin>>a[i][j]; } } for(i=0;i<m;i++) { for(k=0;k<n;k++) { b[k]=0; } for(j=i;j<m;j++) { for(k=0;k<n;k++) { b[k]+=a[j][k]; } temp=yiwei_max(k,b); if(temp>sum) { sum=temp; } } } cout<<sum<<endl; }
标签:
原文地址:http://www.cnblogs.com/apak/p/4442626.html