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

Day26 洛谷真题讲解(递推)(背包问题)

下面两道背包问题,如果整明白了那就是相当不错了

 

#include<iostream>
using namespace std;
int arr[30] = { 1,1,2 };
int main()
{
	int n;
	cin >> n;
	for (int i = 3; i <=n; i++)
	{
		for (int k = 1; k <= i; k++)
		{
			arr[i] += arr[k - 1] * arr[i - k];
		}
	}
	cout << arr[n];
}

背包问题

 

#include<iostream>
#include<algorithm>
using namespace std;

int timee[101];
int value[101];
int dp[101][1010];

int main()
{
    int t, m;
    cin >> t >> m;
    for (int i = 0; i < m; i++)  // 修正:读取 m 个物品
    {
        cin >> timee[i] >> value[i];
    }
    
    for (int i = 1; i <= m; i++)  // 修正:从 1 开始循环
    {
        for (int j = 0; j <= t; j++)
        {
            if (timee[i-1] > j)  // 修正:使用 i-1 索引
            {
                dp[i][j] = dp[i-1][j];
            }
            else
            {
                dp[i][j] = max(dp[i-1][j], dp[i-1][j - timee[i-1]] + value[i-1]);  // 修正:使用 i-1 索引
            }
        }
    }
    
    cout << dp[m][t];  // 修正:输出 dp[m][t]
}

看好上面的for循环有两个地方是从i=1开始的

#include<iostream>
int num[50];
int dp[50][25000];
using namespace std;
int main()
{
	int v, n;
	cin >> v >> n;
	for (int i = 1; i <= n; i++)
	{
		cin >> num[i];
	}
	for (int i = 1; i <= n; i++)
	{
		for (int j = 0; j <= v; j++)
		{
			if (num[i] > j)
			{
				dp[i][j] = dp[i - 1][j];
			}
			else
			{
				dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - num[i]] + num[i]);
			}
		}
	}
	cout <<v- dp[n][v];
}

相关文章:

  • 【算法】 区间合并(附蓝桥杯真题) python
  • 如何解决:[/robot_state_publisher] Reason: new node registered with same name]
  • 群体智能优化算法-金豺优化算法(Golden Jackal Optimization, GJO,含Matlab源代码)
  • Go语言进化之旅:从1.18到1.24的语法变革
  • Spring 中的 bean 作用域
  • [AI] 从Trellis AI 模型生成本地化部署到投入Pinokio怀抱
  • K8S学习之基础二十九:K8S中的secret
  • 数据结构------线性表
  • 使用VisualStdio制作上位机(一)
  • Java 多线程编程:提升系统并发处理能力!
  • 常见限流算法及实现
  • python练习2
  • Java集合 - HashMap
  • 基于银河麒麟系统ARM架构安装达梦数据库并配置主从模式
  • 编程语言的几种常见的分类方法
  • NET进行CAD二次开发之二
  • bgp服务器是什么意思
  • 4060ti-16G显卡部署deepseek-32B(支持联网搜索)
  • Touch panel功能不良分析
  • 深入解析 Latent Diffusion Model(潜在扩散模型,LDMs)(代码实现)
  • wordpress 学校模版/seo优化一般多少钱
  • 注册网站空间/友情链接站长平台
  • 网站建设服务哪家有/app推广拉新接单平台
  • 聚民网网站建设/seo推广网址
  • 哔哩哔哩网页版在线观看网址/搜索引擎营销优化策略有哪些
  • 网站制作内容/关键词长尾词优化