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

浙江省住房城乡建设厅官方网站?a品定制网站开发

浙江省住房城乡建设厅官方网站,?a品定制网站开发,合肥建工学校,哈尔滨免费建站模板LeetCode 每日一题 ---- 【741.摘樱桃】 741.摘樱桃方法#xff1a;动态规划 741.摘樱桃 方法#xff1a;动态规划 这是一道动态规划的题目#xff0c;enmmmm#xff0c;依旧是做不出来#xff0c;尤其是看到困难两个标红的字体#xff0c;就更不想做了#xff0c;然后… LeetCode 每日一题 ---- 【741.摘樱桃】 741.摘樱桃方法动态规划 741.摘樱桃 方法动态规划 这是一道动态规划的题目enmmmm依旧是做不出来尤其是看到困难两个标红的字体就更不想做了然后是看着答案一点一点顺着思路和题解做的做完后发现也没有想象中的那么难 从(n-1, n-1)返回(0, 0)可以等价的看做又一次从(0, 0)到(n-1, n-1)的路径 然后求一个所能采到樱桃个数的最大值 不妨假设两人同时出发且速度相同。无论这两人怎么走在时间相同的情况下 他们向右走的步数加上向下走的步数之和是一个定值设为 k。 设两人的坐标为 (x1,y1)和 (x2,y2)则 x1y1x2y2k。 那么当 x1x2 时必然有 y1y2即两个人到达了同一个格子。 定义状态f[k][x1][x2] k表示两个人分别从(x1, k - x1)和(x2, k - x2)同时触发到达(n-1, n-1)锁摘到樱桃个数之和 x1x2分别代表第一个和第二个人的起始横坐标 状态转移方程 f[k][x1][x2]可以由四种情况转移过来 都往右f[k][x1][x2] f[k-1][x1][x2] A往下B往右f[k][x1][x2] f[k-1][x1-2][x2] A往右B往下f[k][x1][x2] f[k-1][x1][x2-1] 都往下f[k][x1][x2] f[k-1][x1-1][x2-1] f[k][x1][x2]的最终结果是上述四种情况的最大值然后再累加上grid[x1][k-x1]和grid[x2][k-x2]就可以得到最终该位置的答案 若x1x2说明第一个人和第二个人的位置重合了所以在这种情况下grid[x1][k-x1]只能加一次 /** 从(n-1, n-1)返回(0, 0)可以等价的看做又一次从(0, 0)到(n-1, n-1)的路径 然后求一个所能采到樱桃个数的最大值 不妨假设两人同时出发且速度相同。无论这两人怎么走在时间相同的情况下 他们向右走的步数加上向下走的步数之和是一个定值设为 k。 设两人的坐标为 (x1,y1)和 (x2,y2)则 x1y1x2y2k。 那么当 x1x2 时必然有 y1y2即两个人到达了同一个格子。 定义状态f[k][x1][x2] k表示两个人分别从(x1, k - x1)和(x2, k - x2)同时触发到达(n-1, n-1)锁摘到樱桃个数之和x1x2分别代表第一个和第二个人的起始横坐标 状态转移方程f[k][x1][x2]可以由四种情况转移过来都往右f[k][x1][x2] f[k-1][x1][x2]A往下B往右f[k][x1][x2] f[k-1][x1-2][x2]A往右B往下f[k][x1][x2] f[k-1][x1][x2-1]都往下f[k][x1][x2] f[k-1][x1-1][x2-1]f[k][x1][x2]的最终结果是上述四种情况的最大值然后再累加上grid[x1][k-x1]和grid[x2][k-x2]就可以得到最终该位置的答案若x1x2说明第一个人和第二个人的位置重合了所以在这种情况下grid[x1][k-x1]只能加一次*/ class Solution {public int cherryPickup(int[][] grid) {int n grid.length;int[][][] f new int[n * 2 - 1][n][n];// 初始化for (int i 0; i n * 2 - 1; i ) {for (int j 0; j n; j ) {Arrays.fill(f[i][j], Integer.MIN_VALUE);}}f[0][0][0] grid[0][0];for (int k 1; k n * 2 - 1; k ) {// 防止越界for (int x1 Math.max(k - n 1, 0); x1 Math.min(k, n - 1); x1 ) {int y1 k - x1;// 荆棘不可越过if (grid[x1][y1] -1) {continue;}for (int x2 x1; x2 Math.min(k, n - 1); x2 ) {int y2 k - x2;if (grid[x2][y2] -1) {continue;}// 都往右int res f[k - 1][x1][x2];// 往下往右if (x1 0) {res Math.max(res, f[k - 1][x1 - 1][x2]);}// 往右往下if (x2 0) {res Math.max(res, f[k - 1][x1][x2 - 1]);}// 都往下if (x1 0 x2 0) {res Math.max(res, f[k - 1][x1 - 1][x2 - 1]);}res grid[x1][y1];if (x2 ! x1) {res grid[x2][y2];}f[k][x1][x2] res;}}}return Math.max(f[n * 2 - 2][n - 1][n - 1], 0);} }时间复杂度 O(n3) 空间复杂度 O(n2)
http://www.zqtcl.cn/news/208494/

相关文章:

  • 株洲网站建设和制作wordpress 瑞课教育
  • 网站开发培训什么淘宝客网站备案
  • 提供网站制作公司用虚拟机做服务器搭建网站
  • 做煤层气的网站仅对wordpress自带主题有效
  • 优化网站关键词排名东莞网站设计报价
  • 建设厅网站总经济师是干什么的网络运营商电话
  • mvc5 网站开发之美专业企业建站价格
  • 水果电子商务网站建设规划书ipad做网站服务器
  • 网站模版自适应安卓软件开发培训
  • 网络网站建设10大指标开店装修话做那个网站找工人
  • dedecms网站的下载济南网站忧化
  • 深圳北站设计者亚洲国产中文域名查询
  • 有好的学网站建设的书吗龙岗网站建设服务
  • 建个注册页面网站做网站坚持多少年会有起色
  • 做网站是什么职位工商局网站查询入口
  • 做腰椎核磁证网站是 收 七如何做个盈利的网站
  • wordpress查看站点购物网站的后台做哪些东西
  • 文化馆为何需要建设自己的网站网站的建设教程
  • o2o网站策划京北网app下载
  • 公众号链接电影网站怎么做禁止wordpress保存修订版
  • 免费网站建设排行网站开发需要注册账户吗
  • 深圳营销网站建设免费网站添加站长统计
  • 建设银行网站怎么能转账代理ip注册网站都通不过
  • 一台服务器做两个网站吗明空网络做网站好不好
  • 正定县建设局网站东莞微信网站建设咨询
  • 网站开发免费视频教程网站备案帐号是什么情况
  • 知名门户网站小程序页面设计报价
  • 蒲城矿建设备制造厂网站喀什哪有做网站的
  • 网站内页产品做跳转三合一商城网站
  • 做网站找不到客户兰州 网站制作