当前位置: 代码迷 >> 综合 >> leetcode 1041. Robot Bounded In Circle
  详细解决方案

leetcode 1041. Robot Bounded In Circle

热度:65   发布时间:2024-01-16 17:53:51.0

leetcode 1041. Robot Bounded In Circle

题意:给你一个字符串序列,表示一系列指令。机器人初始在(0,0),朝北。问经过重复多次指令,机器人的路线能不能成环。

思路:简单模拟。一种是一次性直接回到原点,一种是两个指令组成一个来回,一种是四个指令组成一个正方形。

代码:

class Solution {
public:bool isRobotBounded(string instructions) {string str = "";return gao(str+instructions) || gao(str+instructions+instructions) || gao(str+instructions+instructions+instructions+instructions);}bool gao(string str){int x = 0;int y = 0;int dir = 0;int xx[4]={-1,0,1,0};int yy[4]={0,1,0,-1};for(int i=0;i<str.size();i++){if(str[i] == 'G'){x=x+xx[dir];y=y+yy[dir];}else if(str[i] == 'L'){dir=dir-1;if(dir<0)dir+=4;dir=dir%4;}else{dir=dir+1;if(dir<0)dir+=4;dir=dir%4;}}return x==0&&y==0&&dir==0;}
};