题解 | #坐标移动#

坐标移动

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

 import java.util.Scanner;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.regex.Pattern;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        try(BufferedReader br=new BufferedReader(new InputStreamReader(System.in))){
            String str=br.readLine();
            String[] arrs=str.split(";");
            String pattern = "^[ASWD]\\d{1,2}$";
            int x=0;
            int y=0;
            for(String arr :arrs){
                if(arr==null || arr.isEmpty()){
                    continue;
                }
                if(Pattern.matches(pattern, arr)){
                    String direction=arr.substring(0,1);
                    Integer move=Integer.valueOf(arr.substring(1));
                    switch (direction) {
                        case "A":
                            x-=move;
                            break;
                        case "S":
                            y-=move;
                            break;
                        case "W":
                            y+=move;
                            break;
                        case "D":
                            x+=move;
                            break;
                        default:
                            break;
                    }
                }
            }
            System.out.println(x+","+y);
        }catch (Exception e){e.printStackTrace();}
    }
}

全部评论

相关推荐

04-03 12:09
東京大学 C++
点赞 评论 收藏
分享
03-10 14:19
已编辑
重庆邮电大学 前端工程师
球Offer上岸👑:测试也难求一面 逆天
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务