zoukankan      html  css  js  c++  java
  • 【基础练习】【区间DP】codevs2102 石子归并2(环形)题解

    题目描写叙述 Description

    在一个园形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次仅仅能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分。


    试设计出1个算法,计算出将N堆石子合并成1堆的最小得分和最大得分.

    输入描写叙述 Input Description

    数据的第1行试正整数N,1≤N≤100,表示有N堆石子.第2行有N个数,分别表示每堆石子的个数.

    输出描写叙述 Output Description

    输出共2行,第1行为最小得分,第2行为最大得分.

    例子输入 Sample Input

    4
    4 4 5 9

    例子输出 Sample Output

    43
    54

    将环形变成线性,数组开大一倍就可以。

    ans=min{f[1,n],f[2,n+1],...,f[n,2n-1]}

    复杂度O(n^3)

    前缀和等与线性一致。仅仅是要注意循环什么的都要开到2*n-1

    代码在此


    ——今古恨,几千般,仅仅应离合是悲欢



  • 相关阅读:
    picturebox 图片自适应
    C#中如何生成矢量图
    测试ODBC与OLE
    ODBC具体使用
    C#中的OLEDB连接2
    C#中的ODBC、OLEDB连接
    c#执行并行任务之Parallel与TaskFactory
    C# 4.0 新特性之并行运算(Parallel)
    app的下载中心
    第三方库列表
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/7298441.html
Copyright © 2011-2022 走看看