题目如下,一道简单的模拟

在无限的平面上,机器人最初位于 (0, 0) 处,面朝北方。机器人可以接受下列三条指令之一:"G":直走 1 个单位
"L":左转 90 度
"R":右转 90 度
机器人按顺序执行指令 instructions,并一直重复它们。只有在平面中存在环使得机器人永远无法离开时,返回 true。否则,返回 false。

题解

可以通过观察发现,机器人最多进行4次输入的字符串对应的操作就可以到达远点,我选择循环四次,直接看结果是不是原点。代码如下

class Solution {public boolean isRobotBounded(String instructions) {int x=0;int y = 0;int t = 4;int state = 1;while (t>0) {for (int i = 0; i < instructions.length(); i++) {if (instructions.charAt(i) == 'L') {state--;}if (instructions.charAt(i) == 'R') {state++;}if (state == 0) state = 4;if (state == 5) state = 1;if (instructions.charAt(i) == 'G') {switch (state) {case 1:y++;break;case 2:x++;break;case 3:y--;break;case 4:x--;break;}}}t--;}if(x==0&&y==0){return true;}else {return false;}}
}

转载于:https://www.cnblogs.com/yfc0818/p/11072590.html

leetcode1041困于环中的机器人相关推荐

  1. LeetCode 1041. 困于环中的机器人

    文章目录 1. 题目 2. 解题 1. 题目 在无限的平面上,机器人最初位于 (0, 0) 处,面朝北方.机器人可以接受下列三条指令之一: "G":直走 1 个单位 "L ...

  2. 1041. 困于环中的机器人

    在无限的平面上,机器人最初位于 (0, 0) 处,面朝北方.机器人可以接受下列三条指令之一: "G":直走 1 个单位 "L":左转 90 度 "R& ...

  3. 扫地机器人的轮子困住_扫地机器人被“困住”的解决办法

    原标题:扫地机器人被"困住"的解决办法 经常可以看到扫地机器人的用户说:他家的扫地机器人在工作的时候,会经常被"困住",无法动弹,导致扫地效率大大降低.针对这一 ...

  4. 扫地机器人的轮子困住_扫地机器人老被困住,我来告诉你怎么一次性解决

    原标题:扫地机器人老被困住,我来告诉你怎么一次性解决 扫地机器人可以给我们带来干净整洁的家,帮我们节省更多的业余时间.但是在使用扫地机的时候也会遇见很多的问题,最烦人的就是老被困住,动不动就要求助,这 ...

  5. 模拟(持续更新、整理)

    链表 两数相加:leetcode-2 两两交换链表只能够的节点:leetcode-24 K个一组翻转链表:leetcode-25 旋转链表:leetcode-61 反转链表II:leetcode-92 ...

  6. python制作题库网站_Python解答力扣网站题库简单版!

    1041. 困于环中的机器人 题库链接: 1041. 困于环中的机器人 . 题干 在无限的平面上,机器人最初位于 (0, 0) 处,面朝北方.机器人可以接受下列三条指令之一: "G" ...

  7. Python解答力扣网站题库简单版----第三讲

    1041. 困于环中的机器人 题库链接: 1041. 困于环中的机器人. 题干 在无限的平面上,机器人最初位于 (0, 0) 处,面朝北方.机器人可以接受下列三条指令之一: "G" ...

  8. 如何学好C语言--你的学渣朋友告诉你

    光说不练假把式,光练不说傻把式,又练又说真把式. 真实感受,不是我不想学,是我真的不知道我哪里不会啊和得怎么做啊?本文作者当初就是这么废掉的 推荐两个练习的网站 (一)C语言网 https://www ...

  9. 【Coding】LeetCode刷题记录

    常用数据结构 1. 集合 2. 排序 3. 二分 - 模板 [33. 搜索旋转排序数组](https://leetcode-cn.com/problems/search-in-rotated-sort ...

最新文章

  1. Nancy in .Net Core学习笔记 - 初识Nancy
  2. 《Groovy语言规范》-语法(三)
  3. ActiveMQ搭建
  4. boost::math::filters::daubechies_scaling_filter用法的测试程序
  5. 华为的数字化转型与数据治理
  6. 【Flink】Flink 从 1.9.1 版本 升级到 1.12.4 版本的 注意事项 以及 过程
  7. 疯狂java学习笔记之面向对象(三) - 方法所属性和值传递
  8. SqlServer行转列
  9. 【Linux】监视gpu使用情况
  10. 区块链 不可能三角是什么
  11. 算法设计与分析基础——假币问题(三分法)
  12. 单片机c语言试题和答案,(完整版)单片机试卷及答案
  13. [独家]MIT课程笔记:数据可视化会撒谎
  14. JQuery插件二--colorbox
  15. 多因子选股模型python_A题通过机器学习优化股票多因子模型
  16. 如何将Word中数据转换为excel表格
  17. 艾美捷胆固醇肉豆蔻酸酯说明书和相关研究
  18. 解决克隆虚拟机后无法上网问题(亲测有效)
  19. 高姿态下的面部表情识别系统
  20. 基于matlab的LDPC编译码误码率仿真,调制方式为64QAM

热门文章

  1. 使用BizTalk Server常见问题处理
  2. 字符大小端aix linux,long, unsigned long不是跨平台的(慎用)
  3. mysql集群重启offline_mysql集群搭建问题及解决方法集锦
  4. 服务器改家用系统吗,服务器主机改家用
  5. php数据库postgresql,PHP 操作 PostgreSQL数据库
  6. 升级glibc的影响_Java 11 升级:“债务”“危机”
  7. linux内核源码代码量,Linux内核源代码数量已经超过1000万行
  8. json 语法_JSON的基本语法
  9. 如何在Java中检查对象是否为空?
  10. struct/class的数据对齐---简单解析