1138. 字母板上的路径


曼哈顿距离

class Solution {
    public String alphabetBoardPath(String target) {
        int x = 0, y = 0, nx = 0, ny = 0;
        StringBuffer ans = new StringBuffer("");
        for (int i = 0; i < target.length(); i++) {
            int temp = target.charAt(i) - 'a' ;
            if (i > 0 && target.charAt(i) == target.charAt(i - 1)) {
                ans.append("!");
            } else {
                nx = temp / 5;
                ny = temp % 5;
                if (ny < y) {
                    for (int z = 0; z < y - ny; z++)
                        ans.append("L");
                }
                if (nx < x) {
                    for (int z = 0; z < x - nx; z++)
                        ans.append("U");
                }
                if (nx > x) {
                    for (int z = 0; z < nx - x; z++)
                        ans.append("D");
                }
                if (ny > y) {
                    for (int z = 0; z < ny - y; z++)
                        ans.append("R");
                }

                ans.append("!");
                x = nx;
                y = ny;

            }
        }
        return ans.toString();
    }
}
全部评论

相关推荐

整顿职场的柯基很威猛:这种不可怕,最可怕的是夹在一帮名校里的二本选手,人家才是最稳的。
点赞 评论 收藏
分享
10-29 15:38
门头沟学院 Java
榕城小榕树:难道你简历里写了配送路径优化算法?
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务