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

wordpress com.cn惠州百度推广优化排名

wordpress com.cn,惠州百度推广优化排名,建设局是个好单位吗,如何做外贸soho做网站本题求解最小值,思路是动态规划,但是遇到的问题是:动态规划更新的顺序和步长,以及可能存在的递归溢出问题。 1、确定dp数组含义 dp[i]表示第i天到最后一天(可能不在需要出行的天数里),需要花费…

本题求解最小值,思路是动态规划,但是遇到的问题是:动态规划更新的顺序和步长,以及可能存在的递归溢出问题。

1、确定dp数组含义

dp[i]表示第i天到最后一天(可能不在需要出行的天数里),需要花费的最少出行价格,也就是如果需要提前买票的价格是计算在第i天的价格的。

2、确定递推公式

对于当前的dp[i],有3种可选的方案:1天、7天、30天,分别代表了更新后的dp位置。

dp[i] = min(dp[i + 1] + cost[0], dp[i + 7] + cost[1], dp[i + 30] + cost[2]) 

3、确定遍历顺序

因为当前买票的最小值依赖于之后的dp,所以是从后往前遍历,同时采用递归的写法,因为顺序遍历开销大而且判断条件比较复杂:

3.1确定终止条件:超出了365天的限制

if i > 365: return 0

3.2如果在days内的更新

return dp(i) = min(dp(i + 1) + cost[0], dp(i + 7) + cost[1], dp(i + 30) + cost[2]) 

3.3如果不在days内的更新

return dp(i+1)

4、确定初始化

初始化dp数组为0即可,长度为366,和days的索引保持一致。

class Solution:def mincostTickets(self, days: List[int], costs: List[int]) -> int:duration = [1, 7, 30]dp = [0 for _ in range(366)]@cachedef dp(i):if i > 365:return 0elif i in days:return min(dp(i + d) + c for c, d in zip(costs, duration))else:return dp(i+1)return dp(1)

这里使用了Python3的@cache装饰特性,用来储存递归的新数据节省时间开销。

对于python2、java可以使用memo = {}记忆化字典来储存每一个dp,如果是新的就储存,见过的直接返回。

http://www.tj-hxxt.cn/news/89625.html

相关文章:

  • 网站转化率分析工具关键词规划师工具
  • 曲周专业做网站模板建站教程
  • 长沙 汽车 网站建设百度排行榜前十名
  • 大悟网站开发谷歌优化方法
  • 北京广告公司有哪些seo网站优化推荐
  • 电商网站规划的开发背景超级外链发布工具
  • 官方网站建设推广制作电商网站
  • 页面设计属于什么知识产权seo专业培训需要多久
  • 类聚seo广州网页seo排名
  • 好的做网站公司浙江seo关键词
  • 北京信管局 网站备案高端网站建设定制
  • 好用的h5网站模板下载推广员网站
  • 网站做快捷方式seo技术软件
  • 高校网站推广方案百度客服24小时人工服务在线咨询
  • 在重庆_那里可以做诚信网站认证合肥网站快速优化排名
  • 高埗镇仿做网站如何搜索关键词
  • 找合伙人做网站百度电话客服24小时人工
  • 高铁建设官方网站百度seo优化关键词
  • 知名做网站哪家好外包公司软件开发
  • 南京做网站建设的公司哪家好永久不收费免费的聊天软件
  • 英文网站怎么设置中文中国广告公司前十强
  • 企业网站建设与网页设计信息流优化师面试常见问题
  • 印度做网站设计品牌营销包括哪些内容
  • php商城网站开发实例视频百度指数专业版价格
  • 网络公司网站做的不错的在线网站seo诊断
  • 天津建站软件资阳市网站seo
  • 苏州论坛型网站建设seo排名怎么优化软件
  • 网站设计实验目的淘宝运营培训多少钱
  • 佛山做网站公司有哪些产品营销策划方案怎么做
  • 一个域名怎么做多个网站会计培训班多少钱