Day 6

博客介绍了DAG(有向无环图)上的DP,列举了嵌套矩形和硬币问题两个经典模型。嵌套矩形是求DAG上不固定起点的最长路径,硬币问题是求固定终点的最长路和最短路。最后还提及了相关题目的解题思路。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DAG上DP

其实我感觉差不多啊。。。嘶~

不都是DP么?


DAG即有向无环图

这里举出两经典的DAG模型,嵌套矩形硬币问题

嵌套矩形(不固定起点最长路及其字典序)

描述

有n个矩形,每个矩形可以用 (a,b) 来描述,表示长和宽 矩形 X(a,b) 可以嵌套在矩形 Y(c,d) 中,当且仅当 a<c,b<d
或者 b<c,a<d(旋转90度) 例如(1,5)可以嵌套在(6,2)内,但不能嵌套在(3,4)中
你的任务是选出尽可能多的矩形排成一行,使得除最后一个外,每一个矩形都可以嵌套在下一个矩形内

分析 我们就是在求DAG上的不固定起点的最长路径

硬币问题(固定终点的最长路和最短路)

描述

有 n 种硬币,面值分别为V1, V2······Vn,每种都有无限多 给定非负整数 S ,可以选用多少个硬币,使得面值之和恰好为S?
输出硬币数目的最小值和最大值

分析

看上去和嵌套矩形问题很不一样,但本题的本质也是DAG上的路径问题 将每种面值看作一个节点,设初始状态为S,目标状态为0 若当前在状态
i,每使用一个硬币 j,状态便转移到i - Vj


以上都是课件,(–__–)哈哈哈

其实也没什么好说的,书读百遍,其义自见嘛~

那就gang题目吧


  • A题
    dp[i]表示i节点的花费,dp[i] = max(dp[j] + a[i], dp[i])

  • B题
    迪杰斯特拉跑一遍求最短路,dp来求


end

<think>我们正在处理用户关于苍穹外卖项目的查询,用户想查看项目中关于bucket的day6相关内容。但根据提供的引用内容,并没有直接提到"bucket"或"day6"的具体信息。因此,我们需要根据现有引用内容进行合理推断和回答。首先,回顾引用内容:-引用[1]提到删除菜品时的条件判断(起售状态和套餐关联)以及删除操作(菜品表和口味数据)。-引用[2]概述了苍穹外卖的主要功能模块,包括菜品管理、套餐管理等。-引用[3]提到Day03的内容,包括公共字段自动填充、新增菜品、菜品分页查询、删除菜品、修改菜品、菜品启售停售等。-引用[4]展示了新增菜品的控制器代码。用户问题中的关键词是“bucket”和“day6”。在苍穹外卖项目中,通常不会直接使用“bucket”这个词,它可能是指某种存储或分类的概念?而“day6”可能是指项目开发过程中的第六天内容。由于引用中没有直接提到day6的内容,也没有出现“bucket”,我们需要结合项目常见内容进行推测:1.**关于bucket**:在软件开发中,bucket通常用于存储(如云存储中的存储桶)。但在苍穹外卖项目中,根据引用[2]的功能描述,并没有明显的存储桶概念。可能用户指的是某个功能模块或技术组件?或者可能是用户误用了术语?考虑到项目是一个外卖系统,可能涉及图片存储,那么可能会使用云存储(如阿里云OSS)的bucket来存储菜品图片。但引用中并未提及。2.**关于day6**:从引用[3]和引用[4]可以看出,项目是按天进行开发的。引用[3]是Day03的内容,引用[4]可能是Day04的内容。那么Day06可能涉及订单管理、数据统计等功能(引用[2]中提到的模块)。但具体内容未知。由于信息不足,我们无法直接给出Day06的内容。但我们可以提供一些常见的Day06可能涉及的内容(基于外卖项目的典型开发流程):-订单管理功能(如订单分页查询、订单状态修改)-数据统计功能(如营业额统计)-可能包括一些高级功能,如支付集成、配送管理等同时,关于“bucket”,如果是指云存储,那么可能在菜品或套餐管理中的图片上传功能中涉及。但是,由于引用中没有相关信息,我们只能建议用户:-检查项目文档或课程资料中关于Day06的详细内容-确认“bucket”在项目中的具体含义如果用户能提供更多上下文,我们可以更准确地回答。根据引用内容,我们只能提供相关功能的说明(如引用[1]中删除菜品的逻辑,引用[2]中的功能模块等),但这些与“bucket”和“day6”没有直接关联。因此,我们的回答将:1.坦诚说明引用中没有直接信息。2.根据项目常见内容推测Day06可能的内容。3.解释“bucket”在类似项目中可能的应用(如图片存储),并指出在苍穹外卖项目中未提及。4.建议用户提供更多信息。另外,根据要求,我们需要生成相关问题。§§相关问题§§1.您能提供更多关于“bucket”在苍穹外卖项目中的上下文吗?例如,它是用于存储图片还是其他数据?2.您是指项目开发第六天的具体课程内容还是代码实现?3.苍穹外卖项目中是否使用了云存储服务(如阿里云OSS)来管理图片?</think>根据提供的引用内容,苍穹外卖项目中没有直接提及“bucket”或“Day6”的具体内容。但结合项目架构和引用信息,以下是关于菜品管理和可能涉及存储(bucket)功能的分析: ### 1. **菜品删除流程(与存储相关)** 引用[1]详细说明了菜品删除的校验逻辑: ```markdown 判断条件: 1. 菜品是否起售中 → 起售中不可删除 2. 菜品是否被套餐关联 → 被关联不可删除 3. 执行删除: - 删除菜品表数据 - 删除关联的口味数据 ``` **技术关联**:删除操作可能涉及清理云端存储(如菜品图片的bucket)。若项目使用对象存储(如阿里云OSS),删除菜品时需同步清理对应的bucket文件[^1][^3]。 ### 2. **菜品管理功能范围** 引用[2][^2]显示菜品管理核心功能包括: ```markdown - 菜品启售/停售 - 增删改查操作 - 分类关联管理 ``` 这些操作都可能涉及图片上传/删除到存储bucket,但引用中未明确实现细节。 ### 3. **Day6内容推测** 引用[3][^3]提到项目按天划分模块: - Day03:菜品基础功能(增删改查) - Day04:菜品业务扩展(见引用[4]代码) **合理推测Day6可能涉及**: ```markdown ✅ 订单与存储集成(如订单报表存储到bucket) ✅ 图片批量处理(菜品图片压缩/水印) ✅ 云存储安全策略(访问权限控制) ``` ### 4. **存储技术建议** 若需实现bucket功能: ```java // 伪代码示例:删除菜品时同步清理OSS文件 public void deleteDish(Long dishId) { Dish dish = dishMapper.getById(dishId); if (dish.isOnSale()) throw new BusinessException("起售中不可删除"); if (setmealMapper.countByDishId(dishId) > 0) throw new BusinessException("已被套餐关联"); // 删除OSS文件(核心bucket操作) ossClient.deleteObject("food-bucket", dish.getImageUrl()); dishMapper.delete(dishId); // 删菜品数据 flavorMapper.deleteByDishId(dishId); // 删口味数据 } ``` > **说明**:当前引用未直接包含Day6或bucket实现细节,建议查阅项目文档或代码仓库的`Day06`模块。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值