ZOJ 1074 To the Max【DP】【最大子段和】

来源:互联网 发布:魔盒软件大全 编辑:程序博客网 时间:2024/06/07 11:34
//2635932 2011-08-22 10:48:57 Accepted 1074 C 0 200 刷媛姐姐刷过的题@Unknown#include <stdio.h>#define N 101int n, map[N][N], row_sum[N];void input(){int i, j;for(i=0; i<n; i++)for(j=0; j<n; j++)scanf("%d", &map[i][j]);}int Max_Array_Sum(void){int sum, max, i;sum = max = 0;for(i=0; i<n; i++){if(sum > 0)sum += row_sum[i];elsesum = row_sum[i];if(sum > max)max = sum;}return max;}int Max_Matrix_Sum(void){int sum, max, i, j, k;sum = 0;for(i=0; i<n; i++){for(j=0; j<n; j++)row_sum[j] = 0;for(j=i; j<n; j++){for(k=0; k<n; k++)row_sum[k] += map[j][k];max = Max_Array_Sum();if(max > sum)sum = max;}}return sum;}int main(){while(scanf("%d", &n) != EOF){input();printf("%d\n", Max_Matrix_Sum());}    return 0;}


原创粉丝点击