当前位置: 首页 > news >正文

【蓝桥】二维DP--摆花

📌题目描述

📌解题思路

📌完整代码

 📌举例


📌题目描述

📌解题思路

动态规划(DP) 问题,核心是 “前 i 种物品,每种物品最多可以使用x 次,组成总和 j 的方案数”

 

 

dp[i, j] = dp[i - 1, j] + dp[i - 1, j - 1] + ... + dp[i - 1, j - a[i]]

 

📌完整代码

#include <iostream>using namespace std;const int N = 110, mod = 1000007;int n, m, dp[N][N];int main()
{cin >> n >> m;dp[0][0] = 1; // 初始化,0个物品凑成0的方案数为1for (int i = 1; i <= n; i++){int x;cin >> x;  // 读取物品 i 可用的最大次数for (int j = 0; j <= m; j++){// k 不能超过当前背包容量 j,也不能超过当前物品数量 xfor (int k = 0; k <= j && k <= x; k++){dp[i][j] = (dp[i][j] + dp[i - 1][j - k]) % mod;}}}cout << dp[n][m] << endl; // 输出方案数return 0;
}
  • 三重循环
    • 外层 i(遍历 n 个物品),
    • 中层 j(遍历 0~m 的总和),
    • 内层 k(最多遍历 x 次)。
  • 时间复杂度:O(n × m × x)
    • x 取较大值时,可能会 超时

 📌举例

n = 3(3种花),m = 5(总共需要摆放5朵花),每种花的数量限制如下:

  • 第1种花最多可以用3次。
  • 第2种花最多可以用2次。
  • 第3种花最多可以用1次。

迭代第1种花

dp[1][0] = 1
dp[1][1] = 1
dp[1][2] = 1
dp[1][3] = 1
dp[1][4] = 0
dp[1][5] = 0

 迭代第2种花

dp[2][0] = 1
dp[2][1] = 2
dp[2][2] = 3
dp[2][3] = 4
dp[2][4] = 2
dp[2][5] = 1

 迭代第3种花

dp[3][0] = 1
dp[3][1] = 3
dp[3][2] = 6
dp[3][3] = 10
dp[3][4] = 11
dp[3][5] = 10

最终,dp[3][5] = 10,表示用3种花摆放5朵花的方案数为10。 

 

http://www.lryc.cn/news/536815.html

相关文章:

  • 在AMLOGIC android14 平台上使用adb
  • 力扣-二叉树-222 完全二叉树节点的数量
  • V93K测试机
  • 【机器学习】监督学习-决策树-CART(Classification and Regression Tree,分类与回归树)详尽版
  • Navicat 迁移数据库 传输数据
  • Jetpack Compose初体验
  • ceph部署-14版本(nautilus)-使用ceph-ansible部署实验记录
  • 【C++】C++ 旅馆管理系统(含 源码+报告)【独一无二】
  • 快速排序
  • 国内 ChatGPT Plus/Pro 订阅教程
  • 易仓科技ai面试
  • LabVIEW用户界面(UI)和用户体验(UX)设计
  • 字玩FontPlayer开发笔记14 Vue3实现多边形工具
  • 低代码与 Vue.js:技术选型与架构设计
  • 比较循环与迭代器的性能:Rust 零成本抽象的威力
  • 一文了解zookeeper
  • 算法题(67):最长连续序列
  • 大中型企业专用数据安全系统 | 天锐蓝盾终端安全 数据安全
  • Deepseek解读 | UE像素流送与实时云渲染技术的差别
  • CTFSHOW-WEB入门-PHP特性109-115
  • 模糊综合评价法:原理、步骤与MATLAB实现
  • 【数据结构-红黑树】
  • 【STM32】舵机SG90
  • 【Linux】Socket编程—TCP
  • c++11 for auto不定参数
  • C#+redis实现消息队列的发布订阅功能
  • Docker容器基本操作
  • 从无序到有序:上北智信通过深度数据分析改善会议室资源配置
  • 总结:使用JDK原生HttpsURLConnection,封装HttpsUtil工具类,加载自定义证书验证,忽略ssl证书验证
  • 重新定义人机关系边界,Soul以AI社交构建多元社交元宇宙