Robot Bounded In Circle - LeetCode

๋ฌธ์ œ์ ‘๊ทผ๐Ÿค”


๋†“์ณค๋˜ ๋ถ€๋ถ„๐Ÿ˜…


์ขŒํ‘œx,y์˜ ๊ฒฐ๊ณผ๊ฐ€ 0,0์ธ์ ๋ง๊ณ ๋„ dir โ‰  0์ผ๋•Œ๋„ ๋‹ต์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•จ

๊ทธ๋ž˜์•ผ ๋ฌดํ•œํžˆ ์›์„ ๊ทธ๋ฆฌ๋ฉด ์ด๋™ํ•˜๊ฒŒ๋จ

์ฝ”๋“œ๐Ÿ˜


13.8 MB

4 ms

class Solution {
    func isRobotBounded(_ instructions: String) -> Bool {
        var dir = 0, x = 0, y = 0;
        
        for str in instructions {
            if (str == "G")
            {
                if (dir == 0)
                {
                    y += 1;
                } else if (dir == 1)
                {
                    x -= 1;
                } else if (dir == 2)
                {
                    y -= 1;
                } else
                {
                    x += 1;
                }
            } else if (str == "L")
            {
                dir -= 1;
                dir = (dir + 4) % 4;
            } else
            {
                dir += 1;
                dir %= 4;
            }
        }
        return (x == 0 && y == 0 || dir != 0)
    }
}