题解 | #坐标移动#

坐标移动

https://www.nowcoder.com/practice/119bcca3befb405fbe58abe9c532eb29

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String input= in.nextLine();
        int [] arr={0,0};
        move(arr,input);
        System.out.println(arr[0]+","+arr[1]);
    }

    static void move(int [] arr,String input){
        out:for(String str : input.split(";")){
            char[] charArr=str.toCharArray();
            if(charArr.length<=1){
                continue;
            }
            char move=charArr[0];
            in:for(int i=1;i<charArr.length;i++){
                if(!Character.isDigit(charArr[i])){
                    continue out;
                }
            }
            switch(move){
                case 'W' : up(arr,Integer.valueOf(str.substring(1))); break;
                case 'A' : left(arr,Integer.valueOf(str.substring(1))); break;
                case 'S' : down(arr,Integer.valueOf(str.substring(1))); break;
                case 'D' : right(arr,Integer.valueOf(str.substring(1))); break;
                default:break;
            }
        }
        

    }

    static void up(int [] arr,int step){
        arr[1]=arr[1]+step;
    }
    static void down(int [] arr,int step){
        arr[1]=arr[1]-step;
    }
    static void right(int [] arr,int step){
        arr[0]=arr[0]+step;
    }
    static void left(int [] arr,int step){
        arr[0]=arr[0]-step;
    }

}

主要是判断数据的合法性其他的没啥

全部评论

相关推荐

华子别追了,我害怕了,每天手机提示音一响我就知道你又来了
徐凤年555:直接屏蔽了就行,真的太离谱了,感觉一万个hr
点赞 评论 收藏
分享
06-23 11:43
门头沟学院 Java
allin校招的烤冷...:我靠,今天中午我也是这个hr隔一个星期发消息给我。问的问题还是一模一样的😅
点赞 评论 收藏
分享
06-26 22:20
门头沟学院 Java
码农索隆:让你把简历发给她,她说一些套话,然后让你加一个人,说这个人给你改简历,然后开始卖课
我的求职精神状态
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务