[cpp]

#include <iostream.h>

void main()

{

long dim;

while (!cin.eof() && cin>>dim && !cin.fail())

{

long list[110][110];

long list_sum[110][110];

long sum=0;

long i,j;

long max=-127*1000;

for (j=0;j<dim;j++)

{

cin>>list[0][j];

sum+=list[0][j];

list_sum[0][j]=sum;

max = list[0][j]>max ? list[0][j] : max;

max = list_sum[0][j]>max ? list_sum[0][j] : max;

}

for (i=1;i<dim;i++)

{

for (j=0;j<dim;j++)

{

cin>>list

*[j];*

list_sum

list_sum

*[j]=0;*

max = listmax = list

*[j]> max ? list**[j] : max;*

list_sumlist_sum

*[j]+=list_sum[i-1][j];*

int k;

for (k=j;k>=0;k--)

list_sumint k;

for (k=j;k>=0;k--)

list_sum

*[j]+=list**[k];*

max = list_summax = list_sum

*[j]>max ? list_sum**[j] : max;*

}

}

for (i=1;i<dim;i++)

{

for (j=1;j<dim;j++)

{

int k;

for (k=i-1;k>=0;k--)

max = list_sum}

}

for (i=1;i<dim;i++)

{

for (j=1;j<dim;j++)

{

int k;

for (k=i-1;k>=0;k--)

max = list_sum

*[j]-list_sum[k][j]>max ? list_sum[i][j]-list_sum[k][j] :*

max;

for (k=j-1;k>=0;k--)

max = list_sum[i][j]-list_sum[i][k]>max ? list_sum[i][j]-list_sum[i][k] :

max;

}

}

cout<<max<<endl;

}

}

[/cpp]max;

for (k=j-1;k>=0;k--)

max = list_sum[i][j]-list_sum[i][k]>max ? list_sum[i][j]-list_sum[i][k] :

max;

}

}

cout<<max<<endl;

}

}

[/cpp]