最小m段和问题 动态规划 c++含讲解

最小m段和问题
给定n个整数组成的序列,现在要求将序列分割为m段,每段子序列中的数在原序列中连续排列。如何分割才能使这m段子序列的和的最大值达到最小?

刚刚写了最大k乘积问题的分析,再过来看这道题,感觉差不多,如果你有兴趣的话,可以看看【动态规划】最大k乘积问题

分析-----美丽的分界线-------
1.问题讲解
5 4 3 2 1 n=5,m=3 5个整数,3段
3段子序列 (5/4/3 2 1,5 4/ 3/ 2 1,5 4 3/2 /1,5/4 3 2 /1)
子序列的和最大:(分别为6,9,12,9)
最大值达到最小即为6
2.代码讲解
solve函数是这道题的关键
f[i][j]:前i个数被分为j段,子序列的和最大值的最小值
t[i]:用来存储数字序列的数组
(1)j=1:不分段
f[i][1]=f[i-1][1]+t[i]; 前i-1个数和+第i个数
(2)j>=2
maxt=max(f[k][j-1],f[i][1]-f[k][1]);
这道题就是将数字序列整体分为两部分,第一部分前k个数分为j-1段,得到子序列的和最大值的最小值,另一部分是最后一段,f[i][1]-f[k][1]:i个数的和-前k个数的和 即为最后一段的和
然后进行比较,得到最大的和
可是呢,还有一个要求,就是要求得到的最大的和是最小的(千万不要绕晕啊,哈哈)
所以用了mint ,通过k的变化,不同的分法,得到的maxt不同,找到最小的,
随着i,j不断增加直至达到n,m即可得到答案啦

#include<bits/stdc++.h>
using namespace std;
void solve(int n,int m,
  • 9
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本书是作者从事大型现代通信系统仿真工作20余年的经验总结,利用C++语言系统地讲解了复杂无线通信系统中各类模块的仿真原理与方法,并给出了大量实用的模型源代码。作者在本书编写过程中开发了工具包PracSim,这是一个由仿真模型和可互连的仿真结构组成的模块集,可以为用户提供一个可修改及开发的基础模型,以便能更接近用户所需仿真的系统。书中仿真结构和模型的源代码均可在Prentice Hall的网站上获得。通过本书的学习可使读者掌握无线通信系统仿真的基本方法,从而加深对无线通信和面向对象编程的理解,为从事通信领域的相关研究工作打下坚实的基础。. 本书内容丰富、实用性强,非常适合国内目前的需求。可作为高等院校信息类专业高年级本科生和研究生的通信系统仿真课程的教材,也可供相关工程技术人员参考使用。... 第1章 仿真:背景及回顾 1.1 通信系统 1.2 仿真过程 1.3 仿真程序 第2章 仿真基础结构 2.1 参数输入 2.1.1 各参数值 2.1.2 参数数组 2.1.3 枚举类型参数 2.1.4 系统参数 2.1.5 信号绘图参数 2.2 信号 2.2.1 信号管理策略 2.2.2 信号管理系统的实现 2.3 控制信号 2.4 结果报告 附录2A 源代码实例 第3章 信号发生器 3.1 基本信号发生器 3.1.1 单位阶跃函数 3.1.2 矩形脉冲 3.1.3 单位冲激 3.1.4 软件实现 3.2 音频信号发生器 3.2.1 软件实现 3.3 基带信号采样 3.3.1 采样的频域特性 3.4 基带数据波形发生器 3.4.1 非归零NRZ基带信号 3.4.2 双相位基带信号 3.4.3 延迟调制 3.4.4 应用中的问题 3.5 为带通信号建模 附录3A 源代码实例 第4章 随机过程模型 4.1 随机序列 4.1.1 离散分布 4.1.2 离散随机过程 4.2 随机过程发生器 4.2.1 线性同余序列 4.2.2 软件实现 4.2.3 随机数发生器的评价 4.3 连续时间噪声过程 4.3.1 连续随机变量 4.3.2 随机过程 4.4 加性高斯噪声发生器 4.4.1 高斯分布 4.4.2 误差函数 4.4.3 谱特性 4.4.4 噪声功率 4.4.5 高斯随机数发生器 4.5 通带噪声 4.5.1 包络和相角 4.5.2 瑞利随机数发生器 4.6 随机过程的参数模型 4.6.1 自回归噪声模型 附录4A 源代码实例 第5章 离散变换 5.1 离散傅里叶变换 5.1.1 参数选择 5.1.2 离散傅里叶变换的性质 5.2 时域抽取算法 5.2.1 软件注释 5.3 频域抽取算法 5.4 小采样数N的离散傅里叶变换 5.5 素因数算法 5.5.1 软件注释 附录 5A 源代码实例 第6章 谱估计 6.1 采样频谱 6.1.1 软件实现 6.2 Daniell 周期图 6.2.1 软件实现 6.3 Bartlett 周期图 6.3.1 软件实现 6.4 加窗和其他问题 6.4.1 三角窗 6.4.2 软件考虑 6.4.3 von Hann 窗 6.4.4 汉明窗 6.4.5 软件实现 6.5 Welch周期图 6.5.1 软件实现 6.6 Yule-Walker方法 6.6.1 软件实现 附录6A 源代码实例 第7章 系统表征工具 7.1 线性系统 7.1.1 线性系统的特性 7.1.2 传递函数 7.1.3 传递函数的计算机表示方法 7.1.4 幅频响应、相频响应和时延响应 7.2 星座图 7.2.1 眼图 附录7A 源代码实例 第8章 滤波器模型 8.1 建模方法 8.1.1 数值积分 8.1.2 频率响应采样 8.1.3 数字滤波器 8.2 模拟滤波器响应 8.2.1 低通滤波器幅频响应特性 8.2.2 滤波器转换 8.3 经典模拟滤波器 8.3.1 巴特沃斯滤波器 8.3.2 切比雪夫滤波器 8.3.3 椭圆滤波器 8.3.4 贝塞尔滤波器 8.4 由数值积分来仿真滤波器 8.4.1 双二次型 8.4.2 软件设计 8.5 用IIR数字滤波器仿真模拟滤波器 8.5.1 IIR滤波器的性质 8.5.2 模拟滤波器映射为IIR数字滤波器 8.5.3 软件设计 8.6 频域内滤波 8.6.1 快速卷积 8.6.2 软件设计 附录 8A 源代码实例 第9章 调制与解调 9.1 仿真的要点 9.1.1 利用恢复的载波 9.2 正交相移键控 9.2.1 非理想特性 9.2.2 正交调制器模型 9.2.3 QPSK相关解调器模型 9.2.4 正交解调器模型 9.2.5 QPSK仿真 9.2.6 QPSK信号的性质 9.2.7 偏移 QPSK 9.3 二进制相移键控 9.3.1 BPSK调制器模型 9.3.2 BPSK解调 9.3.3 BPS

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值