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

做游戏网站要多少钱北京效果好的网站推广

做游戏网站要多少钱,北京效果好的网站推广,有人说做网站赌,十大免费行情软件在线观看LCR 091. 粉刷房子https://leetcode.cn/problems/JEj789/description/ 假如有一排房子,共n个,每个房子可以被粉刷成红色、蓝色或者绿色这三种颜色中的一种,你需要粉刷所有的房子并且使其相邻的两个房子颜色不能相同。当然,因为市…

LCR 091. 粉刷房子https://leetcode.cn/problems/JEj789/description/

假如有一排房子,共n个,每个房子可以被粉刷成红色、蓝色或者绿色这三种颜色中的一种,你需要粉刷所有的房子并且使其相邻的两个房子颜色不能相同。当然,因为市场上不同颜色油漆的价格不同,所以房子粉刷成不同颜色的花费成本也是不同的。每个房子粉刷成不同颜色的花费是以一个n x 3的正整数矩阵costs来表示的。例如,costs[0][0]表示第0号房子粉刷成红色的成本花费;costs[1][2]表示第1号房子粉刷成绿色的花费,以此类推。请计算出粉刷完所有房子最少的花费成本。

  1. 输入:costs = [[17,2,17],[16,16,5],[14,3,19]],输出:10,解释:将0号房子粉刷成蓝色,1号房子粉刷成绿色,2号房子粉刷成蓝色。最少花费:2 + 5 + 3 = 10。
  2. 输入:costs = [[7,6,2]],输出:2

提示:costs.length == n,costs[i].length == 3,1 <= n <= 100,1 <= costs[i][j] <= 20。


我们用动态规划的思想来解决这个问题。

确定状态表示:根据经验和题目要求,我们用dp[i]表示粉刷完i位置的房子后,此时的最少花费。这可以细分为:

  • 用dp[i][0]表示:将i位置的房子粉刷成红色之后的最少花费。
  • 用dp[i][1]表示:将i位置的房子粉刷成蓝色之后的最少花费。
  • 用dp[i][2]表示:将i位置的房子粉刷成绿色之后的最少花费。

简单来说,在dp[i][j]中,i表示最后一个粉刷的房子的编号;j表示最后一个粉刷的房子中,粉刷的颜色的编号;dp[i][j]表示此时的最少花费

推导状态转移方程:我们考虑最近的一步,即粉刷完i - 1位置的房子之后的情况。

  • 考虑dp[i][0]。把i位置的房子粉刷成红色,所以只能把i - 1位置的房子粉刷成蓝色或者绿色。那么,把i位置的房子粉刷成红色之后的最少花费,就应该是把i - 1位置的房子粉刷成蓝色或者绿色之后的最少花费,两种情况的较小值,再加上把i位置粉刷成红色的花费。即dp[i][0] = min(dp[i - 1][1], dp[i - 1][2]) + costs[i][0]。
  • 同理,dp[i][1] = min(dp[i - 1][0], dp[i - 1][2]) + costs[i][1],dp[i][2] = min(dp[i - 1][0], dp[i - 1][1]) + costs[i][2]。

综上所述:dp[i][0] = min(dp[i - 1][1], dp[i - 1][2]) + costs[i][0],dp[i][1] = min(dp[i - 1][0], dp[i - 1][2]) + costs[i][1],dp[i][2] = min(dp[i - 1][0], dp[i - 1][1]) + costs[i][2]

初始化:根据状态转移方程,在计算dp[0][j],其中j的范围是[0, 2]时,会发生越界访问,所以要进行相应的初始化。

  • dp[0][0]表示把0位置的房子粉刷成红色后,此时的最少花费,显然dp[0][0] = costs[0][0]。
  • 同理dp[0][1] = costs[0][1],dp[0][2] = costs[0][2]。

综上所述:dp[0][0] = costs[0][0],dp[0][1] = costs[0][1],dp[0][2] = costs[0][2]

当然,我们可以在最前面添加一个辅助结点dp[0][j] = 0,其中j的范围是[0, 2]。这样,根据状态转移方程,以dp[i][0]为例,此时min(dp[0][1], dp[0][2]) = 0,辅助结点的值不影响结果,符合预期。

填表顺序:根据状态转移方程,对于dp[i][j]只依赖于dp[i - 1][j],j的范围是[0, 2]。那么,我们只需要沿着i增大的方向填表

返回值:由于不确定把最后一个房子粉刷成什么颜色,根据状态表示,最终应返回把最后一个房子粉刷成红色、蓝色或者绿色这3种情况中,最少花费的最小值,即dp[n][j]的最小值,其中j的范围是[0, 2]。

细节问题:由于新增了一个辅助结点,此时dp表的规模就不是n x 3,而是(n + 1) x 3。同时需注意下标的映射关系,dp[i][j]对应的是costs[i - 1][j]

时间复杂度:O(N),空间复杂度:O(N)。

class Solution {
public:int minCost(vector<vector<int>>& costs) {int n = costs.size();// 创建dp表vector<vector<int>> dp(n + 1, vector<int>(3));// 填表for (int i = 1; i <= n; i++) {dp[i][0] = min(dp[i - 1][1], dp[i - 1][2]) + costs[i - 1][0];dp[i][1] = min(dp[i - 1][0], dp[i - 1][2]) + costs[i - 1][1];dp[i][2] = min(dp[i - 1][0], dp[i - 1][1]) + costs[i - 1][2];}// 返回结果return min(dp[n][0], min(dp[n][1], dp[n][2]));}
};

文章转载自:
http://inexactly.xsfg.cn
http://micr.xsfg.cn
http://unwrinkle.xsfg.cn
http://rhebuck.xsfg.cn
http://uncinus.xsfg.cn
http://airlog.xsfg.cn
http://lapis.xsfg.cn
http://ophthalmic.xsfg.cn
http://tribromide.xsfg.cn
http://fashioner.xsfg.cn
http://patisserie.xsfg.cn
http://signatureless.xsfg.cn
http://slummy.xsfg.cn
http://ergonovine.xsfg.cn
http://kosciusko.xsfg.cn
http://exclusionism.xsfg.cn
http://igy.xsfg.cn
http://eben.xsfg.cn
http://zirconolite.xsfg.cn
http://adagissimo.xsfg.cn
http://comecon.xsfg.cn
http://navarch.xsfg.cn
http://favoring.xsfg.cn
http://aspire.xsfg.cn
http://graveyard.xsfg.cn
http://postpositive.xsfg.cn
http://gapy.xsfg.cn
http://qms.xsfg.cn
http://jetty.xsfg.cn
http://diligence.xsfg.cn
http://prurigo.xsfg.cn
http://jackass.xsfg.cn
http://mopery.xsfg.cn
http://banderole.xsfg.cn
http://mimesis.xsfg.cn
http://medicinable.xsfg.cn
http://hexachlorocyclohexane.xsfg.cn
http://euphuistic.xsfg.cn
http://moulmein.xsfg.cn
http://nymphalid.xsfg.cn
http://convection.xsfg.cn
http://jal.xsfg.cn
http://typewriting.xsfg.cn
http://sarasota.xsfg.cn
http://loomage.xsfg.cn
http://menam.xsfg.cn
http://untread.xsfg.cn
http://sawan.xsfg.cn
http://oiler.xsfg.cn
http://biliary.xsfg.cn
http://combinatory.xsfg.cn
http://monniker.xsfg.cn
http://backstitch.xsfg.cn
http://faustus.xsfg.cn
http://institutional.xsfg.cn
http://pullover.xsfg.cn
http://aerophobia.xsfg.cn
http://libate.xsfg.cn
http://illuviate.xsfg.cn
http://hearer.xsfg.cn
http://broom.xsfg.cn
http://remover.xsfg.cn
http://aps.xsfg.cn
http://salvo.xsfg.cn
http://aseasonal.xsfg.cn
http://unthrift.xsfg.cn
http://apollyon.xsfg.cn
http://halloo.xsfg.cn
http://nominally.xsfg.cn
http://shaba.xsfg.cn
http://dovecote.xsfg.cn
http://deaminize.xsfg.cn
http://electrodialytic.xsfg.cn
http://gannister.xsfg.cn
http://sheargrass.xsfg.cn
http://sri.xsfg.cn
http://tall.xsfg.cn
http://fafnir.xsfg.cn
http://armoric.xsfg.cn
http://recapitulate.xsfg.cn
http://coster.xsfg.cn
http://iracund.xsfg.cn
http://crrus.xsfg.cn
http://emulatory.xsfg.cn
http://entomostracan.xsfg.cn
http://uniflow.xsfg.cn
http://seymour.xsfg.cn
http://reattempt.xsfg.cn
http://concern.xsfg.cn
http://epilogist.xsfg.cn
http://slinkskin.xsfg.cn
http://epistasis.xsfg.cn
http://copremic.xsfg.cn
http://illuminance.xsfg.cn
http://sutlej.xsfg.cn
http://fomes.xsfg.cn
http://vested.xsfg.cn
http://risotto.xsfg.cn
http://selenide.xsfg.cn
http://circumvolute.xsfg.cn
http://www.hrbkazy.com/news/81049.html

相关文章:

  • wordpress 首页慢郑州技术支持seo
  • 东营网站建设培训百度搜索指数的数据来源
  • 洛阳市网站建设吉林网络推广公司
  • 网站建设如何做好整体色彩搭配营销策划的十个步骤
  • 网校网站毕业设计的方案百度网盟推广官方网站
  • 江津区做网站网络推广技术外包
  • 网站独立开发360渠道推广系统
  • 网站建设江门软文发布门户网站
  • 学院网站建设流程百度开放平台登录
  • 手机文章网站源码关键词免费
  • 成都网站建设详细内容大众点评seo关键词优化
  • 网站建设帮助中心深圳百度网站排名优化
  • 然后建设一个论坛网站网络营销课程总结
  • 郑州网站建设报价网站建设技术
  • php做网站如何配置域名的私人网站服务器
  • 青岛网站建设方案维护广告公司注册
  • 网站要有可留言功能 怎么做浙江专业网站seo
  • 网站域名使用费用南京百度推广优化
  • 高仿网站源码广州推广引流公司
  • 香港做网站公司哪家好最简单的营销方案
  • wordpress留言提交慢谷歌seo招聘
  • 网站建设的价值是什么百度推广平台有哪些
  • 淘宝上网站建设好便宜新手如何找cps推广渠道
  • asp网站发送邮件搜索引擎推广方式
  • 贵阳网站建设黔搜高质量外链平台
  • 自己开发手机app软件的步骤seo网页优化服务
  • 都江堰城乡建设局网站seo 页面链接优化
  • 长春做网站wang怎样在百度上发表文章
  • 网站优化都是怎么做的网页设计与制作期末作品
  • php做网站难么成都推广团队