From a810eeff443c46f6238ef103f63f7dbd6b900a79 Mon Sep 17 00:00:00 2001 From: Kirito <1362050620@qq.com> Date: Tue, 2 Aug 2016 14:50:00 +0800 Subject: [PATCH] Create 1081.cpp --- HDOJ/1081.cpp | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 HDOJ/1081.cpp diff --git a/HDOJ/1081.cpp b/HDOJ/1081.cpp new file mode 100644 index 0000000..5322520 --- /dev/null +++ b/HDOJ/1081.cpp @@ -0,0 +1,106 @@ +#include +#include +#include +#include +using namespace std; +#define MAXN 128 + +typedef int ARRAY[MAXN][MAXN]; + +ARRAY pool; + +#define INF 0x3f3f3f3f +#define NINF -INF-1 +/* +int MaxSum(int N,int* a) +{ + int sum=0; + int tmp=0; + for(int i=0;i0) + { + tmp+=a[i]; + } + else + { + tmp=a[i]; + } + if(tmp>sum) + { + sum=tmp; + } + } + return sum; +} +//*/ +int MaxSum(int n,int *a) +{ + int sum=NINF,b=0; + for(int i=0; i0) + { + b+=a[i]; + } + else + { + b=a[i]; + } + if(b>sum) + { + sum = b; + } + } + return sum; +} +int MaxSumRect(int m,int n,ARRAY& a) +{ + int sum = NINF; + int* b = new int[n+1]; + for(int i=0; isum) + { + sum = max; + } + + } + } + delete[] b; + return sum; +} + +int MaxSumSquare(int N,ARRAY& a) +{ + return MaxSumRect(N,N,a); +} + + +int main() +{ + int n; + while(scanf("%d",&n)!=EOF) + { + memset(pool,0,sizeof(pool)); + for(int i=0; i