首页 > 其他分享 >背包问题的记忆化搜索写法

背包问题的记忆化搜索写法

时间:2023-11-12 20:57:15浏览次数:36  
标签:curv 背包 group int dfs curu 搜索 include 写法

 

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>

using namespace std;

const int N = 1010;

int n, m;
int v[N], w[N];
int f[1010][1010];

int dfs(int curu, int curv) {
    if(f[curu][curv] > 0) return f[curu][curv];
    if(curu == n) return 0;
    
    int res = 0;
    if(curv - v[curu] < 0) res = dfs(curu + 1, curv);
    else {
        res = max(dfs(curu + 1, curv), dfs(curu + 1, curv - v[curu]) + w[curu]);
    }
    
    return f[curu][curv] = res;
}

int main() {
    cin >> n >> m;
    
    for(int i = 0; i < n; i ++ ) cin >> v[i] >> w[i];
    
    cout << dfs(0, m) << endl;
    
    return 0;
}

 

 

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>

using namespace std;

const int N = 1010;

int n, m;
int w[N], v[N];
int f[N];

int dfs(int curv) {
    if(f[curv]) return f[curv];
    
    for(int i = 0; i < n; i ++ ) {
        if(curv >= v[i]) {
            f[curv] = max(f[curv], dfs(curv - v[i]) + w[i]);
        }
    }
    
    return f[curv];
}

int main() {
    cin >> n >> m;
    
    for(int i = 0; i < n; i ++ ) cin >> v[i] >> w[i];
    
    cout << dfs(m) << endl;
    
    
    return 0;
}

 

 

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>

using namespace std;

const int N = 1010;

int n, m;
int f[N][N], s[N];
int w[N][N], v[N][N];

int dfs(int group, int curv) {
    if(f[group][curv]) return f[group][curv];
    if(group > n) return 0;
    
    int res = dfs(group + 1, curv);
    
    for(int i = 0; i < s[group]; i ++ ) {
        if(curv < v[group][i]) continue;
        res = max(res, dfs(group + 1, curv - v[group][i]) + w[group][i]);
    }
    
    return f[group][curv] = res;
}

int main() {
    cin >> n >> m;
    
    for(int i = 0; i < n; i ++ ) {
        cin >> s[i];
        for(int j = 0; j < s[i]; j ++ ) {
            cin >> v[i][j] >> w[i][j];
        }
    }
    
    cout << dfs(0, m) << endl;
    
    return 0;
}

 

标签:curv,背包,group,int,dfs,curu,搜索,include,写法
From: https://www.cnblogs.com/zk6696/p/17827786.html

相关文章

  • 高级搜索指令
    百度高级搜索指令1.双引号把搜索词放在双引号中,代表完全匹配搜索,也就是说搜索结果返回的页面包含双引号中出现的所有的词,连顺序也必须完全匹配。百度和Google都支持这个指令。例如搜索:“中药面膜”2.减号减号代表搜索不包含减号后面的词的页面。使用这个指令时减号前面必须是......
  • 下面判断对象myObj是否存在的写法错误的是( )
    下面判断对象myObj是否存在的写法错误的是()AtypeofmyObj=="undefined"BmyObj===undefinedCmyObj===nullD!this.hasOwnProperty('myObj')正确答案:C前提是myobj是一个对象,只是存在与不存在的问题,几种表示方法:1、!obj2、!window.obj3、typeofmyObj=="undefin......
  • Spring BeanUtils.copyProperties简化写法
    代码importlombok.AllArgsConstructor;importlombok.Data;importlombok.NoArgsConstructor;importorg.springframework.beans.BeanUtils;importorg.springframework.beans.BeansException;importorg.springframework.util.StopWatch;publicclassBeanUtils2{......
  • 记录--vue3 setup 中国省市区三级联动options最简洁写法,无需任何库
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助在写页面的时候,发现表单里面有一个省市区的options组件要写,因为表单很多地方都会用到这个地址选择,我便以为很简单嘛。虽然很简单的一个功能,但是网络上能搜索到的教程大多都是需要配合elementUI等各种UI库的......
  • 【无人机三维路径规划】基于熊气味搜索算法BSSA实现复杂地形无人机避障三维航迹规划附
    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,代码获取、论文复现及科研仿真合作可私信。......
  • 课程详情接口、所有章节接口、课程列表前端、课程详情前端、视频托管、Header.vue搜索
    课程详情接口#思路一:直接在之前写好的查询所有课程的视图类上,配置一个类即可classCourseView(GenericViewSet,CommonListModelMixin,CommonRetrieveModelMixin)返回的字段,跟详情,不太对应(详情中要求拿出所有章节和课时,但实际上只返回了4个课时)序列化类---》重......
  • 相似重复类似相同相近图片照片相片素材屏保搜索查找识别标记清理
    图片清理重复照片相片除重去重重复图片管理软件工具APP相似图片查找清理模糊匹配图片相似场景匹配系统文件扫描清理去重比DuplicateCleanerPro,DuplicatePhotoCleaner更方便实用全盘扫描重复文件清楚删除图片整理照片整理C盘清理高效办公个人照片管理相册管理文档管理数......
  • 爬虫常用写法和用法
    1、查找所有:结果=re.findall(正则,字符串)=>返回列表,用法:r""专业写正则的。没有转义的烦恼,result=re.findall(r"\d+","我有1000万,不给你花,我有1块我给你")2、结果=re.finditer(正则,字符串)=>返回迭代器(需要for循环),result=re.finditer(r"\d+","我有1000万,不......
  • pbootcms 后台内容列表搜索功能扩展及增加显示字段功能
    应项目要求,一个内容模型下栏目不宜分的层级过多,如新闻模块,分2022、2023、2024年度,每年度下分12个月,这样就是2层栏目,再依类别(科技、动漫、电影...)划分层级,栏目数量较多,而且不易管理,需要拓展功能,取content下author字段来区分类别,用不同的帐户添加新闻,默认author值=账户名称。记录......
  • 搜索文档树、bs4其他用法、css选择器、selenium基本使用、selenium其他用法
    搜索文档树#1find_all:找所有列表#2find找一个Tag类的对象find和find_allfrombs4importBeautifulSouphtml_doc="""<html><head><title>TheDormouse'sstory</title></head><body><pclass="title&......