1. 程式人生 > >[POJ1050]To the Max (矩陣,最大連續子序列和)

[POJ1050]To the Max (矩陣,最大連續子序列和)

資料弱,暴力過

題意

N^N的矩陣,求最大子矩陣和

思路

懸線?不需要。暴力+字首和過

程式碼

//poj1050
//n^4暴力
#include<algorithm>
#include<cstdio>
#include<cstring>
#include<cmath>
#define N 105
#define INF 0x3fffffff
using namespace std;
int a[N][N];
int sum[N];
int ans;
int main()
{
    int n; scanf("
%d", &n); for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) scanf("%d", &a[i][j]); for (int i = 1; i <= n; i++) { memset(sym, 0, sizeof(sum)); for (int j = i; j <= n; j++) { int num = 0; for (int k = 1
; k <= n; k++) { num += sum[k] += a[j][k]; ans = max(ans, num); if (num < 0) num = 0; } } } printf("%d\n", ans); return 0; }

PS:VS編譯壞了,傷心!