dp[i][j]=min(dp[i][j],dp[i][k],dp[k+1][j]+sum[i][j]);
表示i-j的最小合并代价。
1 #include2 #include 3 #include 4 5 using namespace std; 6 const int INF = 1 << 30; 7 const int N = 205; 8 9 int dp[N][N]; 10 int sum[N]; 11 int a[N]; 12 13 int getMinval(int a[],int n) 14 { 15 for(int i=0;i 0 ? sum[i-1]:0); 24 for(int k=i;k