zoukankan      html  css  js  c++  java
  • sdut 2169

    #include <iostream>
    #include<cstdio>
     #include<cstring>
     #include<algorithm>
     #include<stdlib.h>
     #include<cmath>
     using namespace std;
     #define N 1010
     #define INF 0 xfffffff
     #define LL long long
     LL dp[1010];
     LL sum[1010];
     int a[1010];
     int min(int a,int b)
     {
         if(a<b)
             return a;
         return b;
     }
     int main()
     {
         int t,i,j,n,m,g;
         cin>>t;
         while(t--)
         {
            memset(sum,0,sizeof(sum));
             cin>>n>>m;
            // for(i = 1 ;i <= n ;i++)
             //dp[i] = INF;
            for(i = 1; i <= n ; i++)
             {
                 cin>>a[i];
                 sum[i] = sum[i-1]+a[i];
                 dp[i] = sum[i]*sum[i];
             }
             for(i = 2; i <= m ; i++)           //从2次划分开始到第m次划分
             {
                for(j = n-m+i ; j >= i ; j--)   //  选择能划分i次当然空间
                {
                    for(g = i-1 ; g < j ; g++)
                     dp[j] = min(dp[j],dp[g]+(sum[j]-sum[g])*(sum[j]-sum[g]));    //不断地更新
                 }
             }
             cout<<dp[n]<<endl;
         }

        return 0;

     }



    /**************************************
        Problem id    : SDUT OJ 2169
        User name    : xiaoniu
        Result        : Accepted
        Take Memory    : 476K
        Take Time    : 400MS
        Submit Time    : 2014-04-21 18:41:26  
    **************************************/

  • 相关阅读:
    php json_decode无法处理解决方法
    jquery ajax怎么使用jsonp跨域访问
    jquery ajax怎么使用jsonp跨域访问
    查看xml源码的方法
    php array_push 与 $arr[]=$value 性能比较
    生成个性二维码方法
    PHP匿名函数的写法
    PHP rand和mt_rand 区别
    C++ 顺序表
    线索树的建立与遍历
  • 原文地址:https://www.cnblogs.com/zhangdashuai/p/3702154.html
Copyright © 2011-2022 走看看