动态规划入门 合并石子 COGS1660 石子合并

1660. 石子合并(加强版)

★★   输入文件:stone3.in   输出文件:stone3.out   简单对比
时间限制:1 s   内存限制:256 MB

【题目描述】

 

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

 

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

 

【输入格式】

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

【输出格式】

输出共1行,最大得分

【样例输入】

4

4 4 5 9

【样例输出】

54

【提示】

注意数据范围。

【来源】

HZOI2014

 

注意范围......

题解观摩chy http://blog.csdn.net/sdfzchy/article/details/70990830

 

贴代码

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<algorithm>
 5 using namespace std;
 6 
 7 int in,f[4010][4010],sum[4010];
 8 int ans,n;
 9 int main(){
10     scanf("%d",&n);
11     for(int i=1;i<=n;i++) scanf("%d",&in),sum[i]=sum[i-1]+in;
12     for(int i=1;i<=n;i++) sum[i+n]=sum[i]+sum[n]; 
13     ans=0x80000000;
14     for(int i=2;i<=n;i++)
15         for(int s=1;s<=2*n-i+1;s++){
16             int e=i+s-1;
17             f[s][e]=max(f[s+1][e],f[s][e-1]);
18             f[s][e]+=sum[e]-sum[s-1];
19         }
20     for(int i=1;i<=n;i++) ans=max(ans,f[i][i+n-1]);
21     printf("%d",ans);
22     return 0;
23 } 

 

转载于:https://www.cnblogs.com/sdfzxh/p/6808572.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/455765.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python实现百钱买百鸡

个人博客点这里 Python语言基础(百元买百鸡) 需求分析 百钱买百鸡的问题算是一套非常经典的不定方程的问题&#xff0c;题目很简单&#xff1a; 公鸡5文钱一只&#xff0c;母鸡3文钱一只&#xff0c;小鸡3只一文钱&#xff0c; 用100文钱买一百只鸡,其中公鸡&#xff0c;母鸡…

实数是不是python数据类型_python 基本数据类型

一、数据类型及操作 #整数类型&#xff0c;和数学中整数的一样&#xff0c;可正可负 *十进制&#xff1a;210 *二进制&#xff1a;以0B或者0b开头&#xff1a;0b1010 *八进制&#xff1a;以0O或者0o开头&#xff1a;0o123 *十六进制&#xff1a;以0x或者0X开头&#xff1a;0x9a…

python之用循环实现五子棋小程序

在python中我们学过流程控制中的循环结构,现在我们来进行一个小应用的练习 本程序是通过循环控制结构来实现五子棋小程序的 游戏规则 五子棋的规则如下: 对局双方各执一色棋子。空棋盘开局。黑先、白后&#xff0c;交替下子&#xff0c;每次只能下一子。棋子下在棋盘的空白点…

Principle of Computing (Python)学习笔记(7) DFS Search + Tic Tac Toe use MiniMax Stratedy

1. Trees Tree is a recursive structure. 1.1 math nodes https://class.coursera.org/principlescomputing-001/wiki/view?pagetrees 1.2 CODE无parent域的树 http://www.codeskulptor.org/#poc_tree.py class Tree:"""Recursive definition for tree…

C#线程篇---Task(任务)和线程池不得不说的秘密

我们要知道的是&#xff0c;QueueUserWorkItem这个技术存在许多限制。其中最大的问题是没有一个内建的机制让你知道操作在什么时候完成&#xff0c;也没有一个机制在操作完成是获得一个返回值&#xff0c;这些问题使得我们都不敢启用这个技术。 Microsoft为了克服这些限制&…

关于编译FFMPEG的初级教程

关于编译FFMPEG的初级教程1.首先我们要下载相关工具&#xff0c;这里不多说&#xff0c;大家按照我的地址去下载文件就好了 MINGW下载地址&#xff1a;http://prdownloads.sourceforge.net/mingw/MinGW-3.1.0-1.exe?download 然后在下载MSYS &#xff1a;http://prdownloads.…

电子科学与技术相关索引汇总

电子科学与技术相关索引汇总 关于安装deepinwindow10双系统有时没有声音的问题关于deepin系统安装design compiler的问题解答基于51单片机的交通灯控制设计基于物联网的智能垃圾桶设计基于FPGA 的8b10b编解码电路前端电路设计金属磁记忆传感器封装集成电路版图与工艺课程设计之…

【百度面试】闸机测试场景

面试被问到这一题思路想法&#xff1a; 自己找了相关内容充实自我。内容分享如下&#xff1a; 随着人脸识别技术的成熟&#xff0c;闸机行业大量应用人脸识别算法&#xff0c;只因现今的人脸识别算法也已经能够保证识别率、识别速度、误识率和拒识率等各项指标的优异性&#x…

前后端分离项目如何部署_前后端分离项目,如何解决跨域问题?

跨域资源共享(CORS)是前后端分离项目很常见的问题&#xff0c;本文主要介绍当SpringBoot应用整合SpringSecurity以后如何解决该问题。01 什么是跨域问题&#xff1f;CORS全称Cross-Origin Resource Sharing&#xff0c;意为跨域资源共享。当一个资源去访问另一个不同域名或者同…

使用模板引擎artTemplate的几个问题总结

一、Template not found 有的时候模板写的并没有问题&#xff0c;可就是找不到。这时候可能是<script>加载顺序问题&#xff0c;模板渲染在模板加载完成之前先执行了&#xff0c;调整<script>的顺序。 二、模板中将字符串转化成数字 利用html中的表单来转化&#x…

Android报“android.content.res.Resources$NotFoundException: String resource ID #0x2”错误

Android报“android.content.res.Resources$NotFoundException: String resource ID #0x2”错误 当调用setText()方法时如果传入int型是不会被当成内容而是resourceID来使用&#xff01; 所以报错&#xff01; 解决方法&#xff1a;TextView.setText("" arg) 转为St…

时间戳问题汇总

大家好 我刚接触流媒体不久&#xff0c; 现在遇到一个非常奇怪的问题&#xff0c;向各位大侠请假&#xff0c;请你们指点。 问题是这样的 用一个 VLC(流媒体客户端) 去请求流媒体服务器上的数据&#xff0c; 但是获得的数据播放速度明显快于1倍速&#xff0c;大概是 timest…

如何实现 C/C++ 与 Python 的通信?

如何实现 C/C 与 Python 的通信&#xff1f; 想在 C 中用 Python 进行数值计算&#xff0c;Python 需要访问 C 的变量并计算后返回数值。有什么好办法呢&#xff1f; 参考https://www.zhihu.com/question/23003213

前端相关索引汇总

前端相关索引汇总 HTML相关 HTML概述和基本结构HTML中Head头HTML标题 HTML段落,换行,字符实体HTML块,含样式的标签HTML中的图片HTML中的链接HTML中的列表HTML中的表格HTML中的表单 CSS相关 Css基本语法及页面引用Css中的选择器Css颜色和文本字体CSS边框,背景,边距,溢出CSS中的…

nginx反向代理配置 多个_实例分享:Nginx学习之反向代理WebSocket配置实例

写在开始去年&#xff0c;做过一款竞赛打分的APP。具体需求&#xff0c;同组教师之间可以相互通信&#xff0c;及时通知同组人员&#xff0c;其他组员做了那些操作(当然&#xff0c;这只是针对特定操作)。实现方案采用目前比较成熟的WebSocket技术&#xff0c;WebSocket协议为创…

性能测试总结(一)---基础理论篇

随着软件行业的快速发展&#xff0c;现代的软件系统越来越复杂&#xff0c;功能越来越多&#xff0c;测试人员除了需要保证基本的功能测试质量&#xff0c;性能也随越来越受到人们的关注。但是一提到性能测试&#xff0c;很多人就直接连想到Loadrunner。认为LR就等于性能测试&a…

Makefile 7——自动生成依赖关系 三颗星

后面会介绍gcc获得源文件依赖的方法&#xff0c;gcc这个功能就是为make而存在的。我们采用gcc的-MM选项结合sed命令。使用sed进行替换的目的是为了在目标名前加上“objs/”前缀。gcc的-E选项&#xff0c;预处理。在生成依赖关系时&#xff0c;其实并不需要gcc编译源文件&#x…

JavaScript使用场景

JavaScript嵌入页面的方式 1、行间事件&#xff08;主要用于事件&#xff09; <input type"button" name"" onclick"alert(ok&#xff01;);">2、页面script标签嵌入 <script type"text/javascript">var a 你好&#…

集合添加元素python_Python 集合(Set)

Python 集合&#xff08;Set&#xff09; 在本文中&#xff0c;您将学习关于Python集的所有内容;如何创建它们、添加或删除其中的元素&#xff0c;以及在Python中对集合执行的所有操作。 Python中的集合是什么&#xff1f; 集合是项目的无序集合。每个元素都是唯一的&#xff0…