Execution of All Suffix Instructions Staying in a Grid

给一个矩阵和一个bot的起始位置还有一串命令, 求能运行多少个这个命令的suffix命令.

这题就是模拟题.

class Solution {
    public int[] executeInstructions(int n, int[] startPos, String s) {
        int[] res = new int[s.length()];
        for(int i = 0; i < s.length(); i ++){
            res[i] = sim(startPos[0], startPos[1], n, i, s);
        }
        return res;
    }
    
    private int sim(int x, int y, int n, int pos, String s) {
        if(pos >= s.length())
            return 0;
        if(s.charAt(pos) == 'L' && y - 1 >= 0)
            return sim(x, y - 1, n, pos + 1, s) + 1;
        else if(s.charAt(pos) == 'U' && x - 1 >= 0)
            return sim(x - 1, y, n, pos + 1, s) + 1;
        else if(s.charAt(pos) == 'R' && y + 1 < n)
            return sim(x, y + 1, n, pos + 1, s) + 1;
        else if(s.charAt(pos) == 'D' && x + 1 < n)
            return sim(x + 1, y, n, pos + 1, s) + 1;
        else
            return 0;
    }
}