栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 1449 Maximum Sum

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 1449 Maximum Sum

#include <stdio.h>#include <string.h>#define MIN -100000000long maxsum1(long*,long);long maxsum2(long [][21],long);long maxsum1(long *a,long n) { long sum=MIN,b=MIN,i; for (i=1;i<=n;++i) {  if (b>0) b+= a[i];  else b=a[i];  if (b>sum) sum=b; } return sum;}long maxsum2(long a[][21],long n) { long max,sum=MIN,b[21],i,k,j; for (i=1;i<=n;++i) {  for (k=1;k<=n;++k)   b[k]=0;  for(j=i;j<=n;j++) {   for(k=1;k<=n;k++)    b[k]+=a[j][k];   max=maxsum1(b,n);   if(max>sum) sum=max;  }  if (j==2) sum=b[1]; } return sum;}int main() { long i,j,k,l,max,sum,n,a[21][21][21],b[21][21]; while(1) {  scanf("%ld",&n);  if (!n) break;  for (i=1;i<=n;++i)   for (j=1;j<=n;++j)    for(k=1;k<=n;++k)     scanf("%ld",&a[i][j][k]);  sum=0;  if (n==1) {printf("%ldn",a[1][1][1]);continue;}  memset(b,0,sizeof(0));  for (i=1;i<=n;++i) {   for (j=1;j<=n;++j)    for (k=1;k<=n;++k)     b[j][k]=0;   for (l=i;l<=n;++l) {    for (j=1;j<=n;++j)     for (k=1;k<=n;++k)      b[j][k]+=a[l][j][k];    max=maxsum2(b,n);    if(max>sum) sum=max;   }  }  printf("%ldn",sum); } return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/375227.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号