Skip to content

Latest commit

 

History

History
72 lines (64 loc) · 1.79 KB

1041. Robot Bounded In Circle.md

File metadata and controls

72 lines (64 loc) · 1.79 KB

Leetcode

1041. Robot Bounded In Circle

문제링크

코드

class Solution {
    func isRobotBounded(_ instructions: String) -> Bool {
        // let ArrayInstructions = Array(instructions)
        let initialFace = "N"
        var face = initialFace
        var code = (0, 0)
        for ins in instructions {
            switch ins {
            case "G" : 
                switch face {
                    case "N" :
                        code = (code.0, code.1 + 1)
                    case "S" :
                        code = (code.0, code.1 - 1)
                    case "E" :
                        code = (code.0 + 1, code.1)
                    case "W" :
                        code = (code.0 - 1, code.1)
                    default:
                        break
                }
            case "L" :
                switch face {
                    case "N" :
                        face = "W"
                    case "S" :
                        face = "E"
                    case "E" :
                        face = "N"
                    case "W" :
                        face = "S"
                    default:
                        break
                }
            case "R" :
                switch face {
                    case "N" :
                        face = "E"
                    case "S" :
                        face = "W"
                    case "E" :
                        face = "S"
                    case "W" :
                        face = "N"
                    default:
                        break
                }
            default:
                break
            }
        }
        return code == (0,0) || face != "N"
    }
}

풀이 이유

참고한 내용