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

盘锦网站建设公司商标注册网上申请平台

盘锦网站建设公司,商标注册网上申请平台,iapp登录wordpress,上海社保网站哪里做转入目录 1654. 到家的最少跳跃次数 题目描述#xff1a; 实现代码与解析#xff1a; bfs 1654. 到家的最少跳跃次数 题目描述#xff1a; 有一只跳蚤的家在数轴上的位置 x 处。请你帮助它从位置 0 出发#xff0c;到达它的家。 跳蚤跳跃的规则如下#xff1a; 它可以 …目录 1654. 到家的最少跳跃次数 题目描述 实现代码与解析 bfs 1654. 到家的最少跳跃次数 题目描述 有一只跳蚤的家在数轴上的位置 x 处。请你帮助它从位置 0 出发到达它的家。 跳蚤跳跃的规则如下 它可以 往前 跳恰好 a 个位置即往右跳。它可以 往后 跳恰好 b 个位置即往左跳。它不能 连续 往后跳 2 次。它不能跳到任何 forbidden 数组中的位置。 跳蚤可以往前跳 超过 它的家的位置但是它 不能跳到负整数 的位置。 给你一个整数数组 forbidden 其中 forbidden[i] 是跳蚤不能跳到的位置同时给你整数 a b 和 x 请你返回跳蚤到家的最少跳跃次数。如果没有恰好到达 x 的可行方案请你返回 -1 。 示例 1 输入forbidden [14,4,18,1,15], a 3, b 15, x 9 输出3 解释往前跳 3 次0 - 3 - 6 - 9跳蚤就到家了。示例 2 输入forbidden [8,3,16,6,12,20], a 15, b 13, x 11 输出-1示例 3 输入forbidden [1,6,2,14,5,17,4], a 16, b 9, x 7 输出2 解释往前跳一次0 - 16然后往回跳一次16 - 7跳蚤就到家了。提示 1 forbidden.length 10001 a, b, forbidden[i] 20000 x 2000forbidden 中所有位置互不相同。位置 x 不在 forbidden 中。 实现代码与解析 bfs class Solution { public:int minimumJumps(vectorint forbidden, int a, int b, int x) {unordered_setint f; // 记录禁止的位置和前进访问过的位置防止死循环for (auto t: forbidden) f.insert(t); queuetupleint, int, bool q; // 当前位置当前步数到此位置是前进还是后退而来 true 前进 false 后退q.push({0, 0, false}); // 初始化起点 不能后退为负数当作false处理// bfswhile (q.size()){auto [j, k, l] q.front();q.pop(); // 出队if (j x) return k; // 到家的位置返回步数// 向前位置合法 且 不超过范围if (!f.count(j a) j a 6000) {q.push({j a, k 1, true}); //入队f.insert(j a); // 标记位置}// 向后位置合法 且 不超过范围并且不能连续两次向后if (l !f.count(j - b) j - b 0){q.push({j - b, k 1, false}); //入队}}return -1;} }; 原理思路 一开始很容易觉得是dp来写其实是bfsdfs只能求一个符合条件的结果而bfs是求最短。 其实注释写的已经很清楚了可以直接看注释。 队列记录当前位置当前步数到此位置是前进还是后退而来。 bfs首先写得到结果的条件就是到家了 j x。 前进时判断要到的位置是否合法且不超过上界上界可以看力扣官解的证明太麻烦了试一个相对较大符合条件的数就行。入队并且标记位置后退时不能到已经走过的位置因为只能退一次要是到已经走过的位置只能往前不就重复了么。 后退时判断大于等于0并且位置合法即可。 若没有符合条件的结果返回 -1。 感觉以后可以改用emplace很多人都这样写代替push和insert确实方便而且还快。
http://www.pierceye.com/news/113165/

相关文章:

  • 浦东新区手机网站设计网络营销做得好的产品
  • 浙江市建设网站市场监督管理局电话举报电话
  • 企业网站的建设的功能定位菏泽百度推广公司电话
  • linux系统怎么做网站女生去住建局好不好
  • 自己搭建环境建设网站网站开发温州
  • 下沙做网站软件erp系统的主要功能
  • 郑州网站建设专家最新手机排行榜2021
  • 宠物店网站建设策划书重庆网站建设 红旗河沟
  • 一般网站自己可以做播放器吗最简单的一个网站开发
  • 网站的开发商务网站安全方案设计
  • 如何建立网站教材漳诈网站建设
  • 开家网站设计公司广州网站建设app开发
  • 建站服务公司网站源码成都游戏外包公司排名
  • 呼伦贝尔网站建设呼伦贝尔astro wordpress
  • 做网站需要好多钱专业制作广告字
  • 网站建设的需要是什么seo营销方案
  • 网站开发服务的协议wordpress自动翻译
  • 网站网站制作400多少钱wordpress 会员积分
  • 天津网站建设首选津坤科技做视频网站用什么好处
  • wordpress ffmpegsem seo是什么意思呢
  • 九江建网站的公司做废钢那个网站好
  • 做网站官网需多少钱wordpress查看访问者ip
  • 美食网站php源码wordpress 文章消失
  • 四川住房和城乡建设厅网站万达网站建设
  • 网站运营一般做那些分析快手营销软件
  • 重庆大渡口建设网站站群搭建
  • 2018年网站开发技术动漫电影做英语教学视频网站
  • 设备管理系统网站模板网站开发基础知识试题
  • wordpress建立好的网站万能搜索网站
  • 杭州 高端网站建设wordpress 不显示ip