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

珠海网页模板建站酒店微信网站建设

珠海网页模板建站,酒店微信网站建设,大数据营销专业,app软件定制收费198.打家劫舍 你是一个专业的小偷#xff0c;计划偷窃沿街的房屋。每间房内都藏有一定的现金#xff0c;影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统#xff0c;如果两间相邻的房屋在同一晚上被小偷闯入#xff0c;系统会自动报警。 给定一个代表每个…198.打家劫舍 你是一个专业的小偷计划偷窃沿街的房屋。每间房内都藏有一定的现金影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统如果两间相邻的房屋在同一晚上被小偷闯入系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组计算你 不触动警报装置的情况下 一夜之内能够偷窃到的最高金额。 1确定dp数组及下标含义 dp[i]考虑下标i以内的房屋最多可以偷窃的金额为dp[i]。 2确定递推公式 决定dp[i]的因素就是第i房间偷还是不偷。 如果偷第i房间那么dp[i] dp[i - 2] nums[i] 即第i-1房一定是不考虑的找出 下标i-2包括i-2以内的房屋最多可以偷窃的金额为dp[i-2] 加上第i房间偷到的钱。 如果不偷第i房间那么dp[i] dp[i - 1]即考虑i-1房。 然后dp[i]取最大值即dp[i] max(dp[i - 2] nums[i], dp[i - 1])。 3dp数组初始化 从递推公式dp[i] max(dp[i - 2] nums[i], dp[i - 1]);可以看出递推公式的基础就是dp[0] 和 dp[1] 从dp[i]的定义上来讲dp[0] 一定是 nums[0]dp[1]就是nums[0]和nums[1]的最大值即dp[1] max(nums[0], nums[1]); 4确定遍历顺序 dp[i] 是根据dp[i - 2] 和 dp[i - 1] 推导出来的那么一定是从前到后遍历 class Solution { public:int rob(vectorint nums) {if(nums.size()0) return 0;if(nums.size()1) return nums[0];vectorint dp(nums.size());dp[0]nums[0];dp[1]max(nums[0],nums[1]);for(int i2;inums.size();i) {dp[i]max(dp[i-2]nums[i],dp[i-1]);}return dp[nums.size()-1];} }; 213.打家劫舍 你是一个专业的小偷计划偷窃沿街的房屋每间房内都藏有一定的现金。这个地方所有的房屋都 围成一圈 这意味着第一个房屋和最后一个房屋是紧挨着的。同时相邻的房屋装有相互连通的防盗系统如果两间相邻的房屋在同一晚上被小偷闯入系统会自动报警 。 给定一个代表每个房屋存放金额的非负整数数组计算你 在不触动警报装置的情况下 能够偷窃到的最高金额。 成环包含三种情况 1不包含首位元素 2包含首元素不包含尾元素 3包含尾元素不包含首元素 class Solution { public:int rob(vectorint nums) {if(nums.size()0) return 0;if(nums.size()1) return nums[0];int result1robRange(nums,0,nums.size()-2);int result2robRange(nums,1,nums.size()-1);return max(result1,result2);}int robRange(vectorint nums,int start,int end) {if(startend) return nums[start];vectorint dp(nums.size());dp[start]nums[start];dp[start1]max(nums[start],nums[start1]);for(int istart2;iend;i) {dp[i]max(dp[i-2]nums[i],dp[i-1]);}return dp[end];} }; 337.打家劫舍 在上次打劫完一条街道之后和一圈房屋后小偷又发现了一个新的可行窃的地区。这个地区只有一个入口我们称之为“根”。 除了“根”之外每栋房子有且只有一个“父“房子与之相连。一番侦察之后聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。 如果两个直接相连的房子在同一天晚上被打劫房屋将自动报警。 计算在不触动警报的情况下小偷一晚能够盗取的最高金额。 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/ class Solution { public:unordered_mapTreeNode*,int umap;int rob(TreeNode* root) {if(rootnullptr) return 0;if(root-leftnullptrroot-rightnullptr) return root-val;if(umap[root]) return umap[root];int val1root-val;if(root-left) val1rob(root-left-left)rob(root-left-right);if(root-right) val1rob(root-right-left)rob(root-right-right);int val2rob(root-left)rob(root-right);umap[root]max(val1, val2);return max(val1, val2);} };
http://www.sczhlp.com/news/170489/

相关文章:

  • 内蒙古建设工程交易中心网站写文章在哪里发表挣钱
  • 越秀手机网站建设安阳网站建设哪家便宜
  • 企业网站设计风格wordpress标题加密
  • 商城网站设计说明书百度浏览器手机版
  • 山东菏泽建设银行网站wordpress更改复原
  • 自己做网站投放有流量么广告公司营销策划方案
  • 为什么 Java 中打印Object类型的变量无需强转,而从Object类型的数组中取元素却要强转?
  • 注销主体备案与网站备案开发出来的电子商务网站域名
  • 网站主页不收录网站费用怎么做帐
  • 企业网站做留言板有什么优势wap网页游戏
  • 网站设计特色龙岗建设高端网站
  • 江海区建设局网站珠海网络
  • 布恩网站删除php网站源代码
  • 公司门户网站制作wordpress自动分享插件下载
  • 科技网络公司经营范围一键优化清理
  • 枣庄手机网站制作品牌网站设计联系
  • 如何制作课程网站模板下载智能创作平台
  • 站长工具最近查询外贸流程是什么
  • 专业做婚庆的网站搜题在线使用网页版
  • 东莞微联建站做网站需要什么权限
  • 上海网站设计要多少钱阳江网球场
  • 静安网站建设哪家好一般网址的正确格式
  • sem包括网站建设吗山西 网站制作
  • wordpress缩略图大小济源网站优化
  • 两学一做网站登录南京润盛建设集团有限公司网站
  • 网站开发任职要求ec2 wordpress
  • 网站制作运营应用市场最新版下载
  • 如何通过轻淘客做网站wordpress做社交网站
  • 做网站的计划书一个网站的首页包括什么
  • 哪个网站做团购要求低点企业网站建设策划书方案范文