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

leetcode10-困于环中的机器人

题目链接:

https://leetcode.cn/problems/robot-bounded-in-circle/description/?envType=study-plan-v2&envId=programming-skills

思路:

首先,题目要寻找的是成环的情况。

1.如果经历一次指令后的方向仍为北方,要使得机器人循环困住,必须让机器人回到原点

2.如果经历一次指令后的方向不是北方,那么最多重复四次又会回到面朝北方,这种情况下机器人虽然不会回到原点,但是也一直都被环困住。 

代码采用了常用的二维平面的向量坐标写法

代码:

class Solution {public boolean isRobotBounded(String instructions) {//记录 0 1 2 3//    北东南西 坐标向量写法int [][] res = {{0,1},{1,0},{0,-1},{-1,0}};int n = instructions.length();int x = 0,y = 0;//记录坐标int faceDirect = 0;//记录朝向 一开始为0 表示指向北for(int i = 0;i<n;i++) {//直走命令if(instructions.charAt(i)=='G') {x+=res[faceDirect][0];y+=res[faceDirect][1];}//左转命令else if(instructions.charAt(i)=='L') {faceDirect = (faceDirect+3)%4;}//右转命令else if(instructions.charAt(i)=='R') {faceDirect = (faceDirect+1)%4;}}if( (x==0 && y==0)|| faceDirect!=0)return true;return false;}
}

http://www.lryc.cn/news/278393.html

相关文章:

  • Linux-shell简单学习
  • CMake入门教程【高级篇】qmake转cmake
  • c#图片作为鼠标光标
  • 微信小程序swiper实现层叠轮播图
  • 揭露欧拉骗局第二篇:逼近公式“Σ1/n=lnn+C”。
  • MYSQL的学习——单行函数详解
  • 深度解析Cron表达式:精确控制任务调度的艺术
  • java实现AES256对称加解密工具类
  • 其他排序(基数排序,希尔排序和桶排序)(数据结构课设篇3,python版)(排序综合)
  • 【复现】DiffTalk
  • SQLServer 系统概述
  • Vue3 + TS + Element-Plus —— 项目系统中封装表格+搜索表单 十分钟写五个UI不在是问题
  • Linux系统——测试端口连通性方法
  • Python虚拟环境轻松配置:Jupyter Notebook中的内核管理指南
  • 大数据-hive函数与mysql函数的辨析及练习-将多行聚合成一行
  • 【AI视野·今日NLP 自然语言处理论文速览 第七十三期】Tue, 9 Jan 2024
  • vue知识-03
  • 关于httpClient 使用的注意事项
  • Docker 发布自定义镜像到公共仓库
  • 程序员有哪些接单的渠道?
  • 服务容错-熔断策略之断路器hystrix-go
  • C++进阶(三)多态
  • 大众汽车宣布将ChatGPT,批量集成在多种汽车中!
  • React----函数组件和类组件
  • Kafka集群部署 (KRaft模式集群)
  • Vue 自定义仿word表单录入之日期输入组件
  • Oracle与Java JDBC数据类型对照
  • C++力扣题目226--翻转二叉树
  • Gorm 数据库表迁移与表模型定义
  • 系列三、Spring Security中自定义用户名/密码