【每日一题】657. 机器人能否返回原点

这篇具有很好参考价值的文章主要介绍了【每日一题】657. 机器人能否返回原点。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

657. 机器人能否返回原点 - 力扣(LeetCode)

在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束

移动顺序由字符串 moves 表示。字符 move[i] 表示其第 i 次移动。机器人的有效动作有 R(右),L(左),U(上)和 D(下)。

如果机器人在完成所有动作后返回原点,则返回 true。否则,返回 false

注意:机器人“面朝”的方向无关紧要。 “R” 将始终使机器人向右移动一次,“L” 将始终向左移动等。此外,假设每次移动机器人的移动幅度相同。

示例 1:

输入: moves = "UD"
输出: true
解释:机器人向上移动一次,然后向下移动一次。所有动作都具有相同的幅度,因此它最终回到它开始的原点。因此,我们返回 true。

示例 2:

输入: moves = "LL"
输出: false
解释:机器人向左移动两次。它最终位于原点的左侧,距原点有两次 “移动” 的距离。我们返回 false,因为它在移动结束时没有返回原点。
class Solution {
    public boolean judgeCircle(String moves) {
        StringBuffer s = new StringBuffer(moves);
        int len = s.length();
        int x = 0,y = 0;
        for(int i = 0 ; i < len ; ++i) {
            switch(s.charAt(i)) {
                case 'U':
                    y+=1;
                    break;
                case 'D':
                    y-=1;
                    break;
                case 'L':
                    x-=1;
                    break;
                case 'R':
                    x+=1;
                    break;
            }
        }
        if(x!=0||y!=0) return false;
        return true;
    }
}

 这是一道简单题,根据题目可以很容易的发现只需要根据题目给出的方向进行模拟即可,即对机器人的走向使用x,y进行模拟,上下走动时,只对y有影响。左右走动时只对x有影响。并且最后的面向并不考虑,也就是只需要x,y都为0即为回到原位。对给出的字符串模拟即可。

题解的方法和博主的方法差不多,不过不需要转成StringBuffer就可以做了,博主用习惯了。文章来源地址https://www.toymoban.com/news/detail-703107.html

到了这里,关于【每日一题】657. 机器人能否返回原点的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【每日一题】874. 模拟行走机器人

    机器人在一个无限大小的 XY 网格平面上行走,从点 (0, 0) 处开始出发,面向北方。该机器人可以接收以下三种类型的命令 commands : -2 :向左转 90 度 -1 :向右转 90 度 1 = x = 9 :向前移动 x 个单位长度 在网格上有一些格子被视为障碍物 obstacles 。第 i 个障碍物位于网格点 obst

    2024年02月16日
    浏览(39)
  • 【每日一题】1041. 困于环中的机器人

    1041. 困于环中的机器人 - 力扣(LeetCode) 在无限的平面上,机器人最初位于  (0, 0)  处,面朝北方。注意: 北方向  是y轴的正方向。 南方向  是y轴的负方向。 东方向  是x轴的正方向。 西方向  是x轴的负方向。 机器人可以接受下列三条指令之一: \\\"G\\\" :直走 1 个单位 \\\"L\\\" :

    2024年02月09日
    浏览(40)
  • 每日一题(set集合)-874. 模拟行走机器人

    874. 模拟行走机器人 初始方向朝y轴正方向,遇到指令command == -1 则向右转, 若为 -2 则向左转 定义方向[-1,0]、[0,1]、[1,0]、[0,-1] 分别为朝x轴负方向, y轴正方向, x轴正方向,y轴负方向 初始方向为[0,1], 若向右转 则方向变为[-1,0]、若向左转方向变为[1,0]。 若向右转则不断 向右

    2024年02月13日
    浏览(42)
  • Leetcode-每日一题【剑指 Offer 13. 机器人的运动范围】

    地上有一个m行n列的方格,从坐标  [0,0]  到坐标  [m-1,n-1]  。一个机器人从坐标  [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格 [35, 37] ,因为

    2024年02月13日
    浏览(38)
  • (搜索) 剑指 Offer 13. 机器人的运动范围 ——【Leetcode每日一题】

    难度:中等 地上有一个 m 行 n 列的方格,从坐标 [0,0] 到坐标 [m-1,n-1] 。一个机器人从坐标 [0, 0] 的格子开始移动,它每次可以向左、右、上、下移动一格(不能移动到方格外),也不能进入行坐标和列坐标的数位之和大于 k 的格子。例如,当 k 为18时,机器人能够进入方格

    2024年02月11日
    浏览(56)
  • 每日算法打卡:机器人跳跃 day 11

    730. 机器人跳跃问题 题目难度:中等 题目来源:笔试题 机器人正在玩一个古老的基于 DOS 的游戏。 游戏中有 N+1 座建筑——从 0 到 N 编号,从左到右排列。 编号为 0 的建筑高度为 0 个单位,编号为 iii 的建筑高度为 H ( i ) H(i) H ( i ) 个单位。 起初,机器人在编号为 0 的建筑处

    2024年01月23日
    浏览(85)
  • 暑期代码每日一练Day3:874. 模拟行走机器人

    题目 874. 模拟行走机器人 分析 这道题就是个简单的模拟 主要有两点考察点: 对 方向数组 的运用 方向数组存储的是各个方向的单位向量,也即: 方向 X Y 向北 0 1 向东 1 0 向南 0 -1 向西 -1 0 存储在数组中,则是方向数组: 我们很容易发现: 我们可以使用一个变量 j 来指示当

    2024年02月16日
    浏览(47)
  • [晓理紫]每日论文推送(有中文摘要,源码或项目地址)--机器人、视觉相关

    VX关注{晓理紫},每日更新论文,如感兴趣,请转发给有需要的同学,谢谢支持 VX关注晓理紫,并留下邮箱可免费获取每日论文推送服务 分类: 大语言模型LLM 视觉模型VLM 扩散模型 视觉导航 具身智能,机器人 强化学习 开放词汇,检测分割 作者: Frank Regal, Chris Suarez, Fabian Parr

    2024年01月18日
    浏览(57)
  • 【办公自动化】钉钉机器人每日定时向不同群组发送消息

            实现每日上午10点自动向各供应商群同步前一日产品数据。通过python+钉钉机器人实现该功能。具体步骤如下: 目录 1.创建机器人获得token 2.编写脚本 2.1 数据整理 2.2 消息发送 3.设置定时任务 群设置--智能群助手--添加机器人--自定义(通过Webhook接入自定义服务)

    2024年02月08日
    浏览(49)
  • ]每日论文推送(有中文摘要或代码或项目地址)---强化学习,机器人,视觉导航

    [晓理紫]每日论文推送(有中文摘要或代码或项目地址) 每日更新论文,请转发给有需要的同学 [晓理紫] VX关注晓理紫,获取每日新论文 VX关注晓理紫,并留下邮箱可免费获取每日论文推送服务 {晓理紫}喜分享,也很需要你的支持,喜欢留下痕迹哦! 大语言模型LLM 视觉模型VL

    2024年01月19日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包