区间DP +计数类DP

news/2025/2/14 8:21:36/

目录

  • 区间DP - 石子合并
  • 背包应用 - 整数划分

区间DP - 石子合并


const int N = 310, INF = 0x3f3f3f3f;
int n, m[N], s[N], dp[N][N];
int main()
{cin >> n;for(int i = 1; i <= n; ++i){cin >> m[i];s[i + 1] = s[i] + m[i];}fill(dp[0], dp[0] + N * N, INF);            // 初始化为正无穷以避免干扰状态计算for(int i = n; i >= 1; --i){for(int j = i; j <= n; ++j){if(i == j)                          // 单独堆石子的合并代价为0dp[i][j] = 0;                   else                                // 注意合并代价的累加,{                                   // 这里以最后一步研究,最后一次合并的代价是区间内的质量和for(int k = i; k < j; ++k)      // 区间质量和通过前缀和直接获得dp[i][j] = min(dp[i][k] + dp[k + 1][j] + s[j + 1] - s[i], dp[i][j]);}// printf("dp[%d][%d]:%d\n", i, j, dp[i][j]);// cout << dp[i][j] << " ";}}cout << dp[1][n];return 0;
}

背包应用 - 整数划分


const int N = 1010, MOD = 1e9 + 7;
int n, dp[N][N];
int main()
{cin >> n;for(int i = 0; i <= n; ++i)dp[i][0] = 1;for(int i = 1; i <= n; ++i){for(int j = 0; j <= n; ++j)         // 注意此段的细节处理{dp[i][j] = dp[i - 1][j] % MOD;  // 先加上不选i的选法if(j >= i)                      // 在j>=i的情况下,累加上选k个i的选法数dp[i][j] = (dp[i - 1][j] + dp[i][j - i]) % MOD;}}cout << dp[n][n];return 0;
}

http://www.ppmy.cn/news/1363404.html

相关文章

构造函数,原型,实例,类的关系整理

视频来源js原型链、构造函数和类_哔哩哔哩_bilibili 如视频所说&#xff0c;构造函数的prototype指向原型&#xff0c;实例化的对象的__proto__指向原型&#xff0c;原型通过constructor指向构造函数&#xff0c;正如class里面的constructor方法就相当于Person构造函数一样&am…

离散数学——树思维导图

离散数学——树思维导图 文章目录 前言内容大纲参考 前言 这是当初学习离散数学时整理的笔记大纲&#xff0c;其中包含了自己对于一些知识点的体悟。现将其放在这里作为备份&#xff0c;也希望能够对你有所帮助。 当初记录这些笔记只是为了在复习时更快地找到对应的知识点。…

Spring Bean 相关注解

目录 Autowired Component,Repository,Service, Controller RestController Scope Configuration Autowired 自动导入对象到类中&#xff0c;被注入进的类同样要被 Spring 容器管理比如&#xff1a;Service 类注入到 Controller 类中。 Service public class UserService …

如何使用Inno Setup制作Unity构建程序的Windows安装程序

1. 准备 &#xff08;1&#xff09;准备好Unity构建的程序集合 必须包括&#xff1a; Data文件夹&#xff08;xxx_Data&#xff09; Mono文件夹&#xff08;MonoBleedingEdge&#xff09; 打包的应用程序文件&#xff08;xxx.exe&#xff09; Unity播放器dll文件&#xff…

基于springboot+vue的校园社团信息管理系统(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战&#xff0c;欢迎高校老师\讲师\同行交流合作 ​主要内容&#xff1a;毕业设计(Javaweb项目|小程序|Pyt…

RabbitMQ——消息应答和持久化

文章目录 RabbitMQ——消息应答和持久化1、消息应答1.1、概念1.2、手动应答示例 2、持久化 RabbitMQ——消息应答和持久化 1、消息应答 1.1、概念 概念 消息应答机制是指消费者在消费消息后向 RabbitMQ 确认&#xff08;acknowledge&#xff09;已经成功处理了消息。 这个机…

一次完整的浏览器请求过程

这个问题定期思考&#xff0c;感受自己的成长与变化。 一个请求过来都经过了什么&#xff1f;(2017年http版) 一个请求过来都经过了什么?(Thrift版) 一个http请求进来都经过了什么(2021版) 网络链路 一个请求如果请求了静态资源&#xff0c;会优先查找缓存&#xff0c;包括浏览…

axure9.0 工具使用思考

原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】…