题解 | 坐标移动

import java.util.Scanner;
import java.util.regex.Pattern;
import java.util.regex.Matcher;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) { // 注意 while 处理多个 case
            String str = in.nextLine();
            String[] s=str.split(";");
            int x=0,y=0;
            for(int i=0;i<s.length;i++){
                if(s[i].isEmpty()||s[i].length()<2){
                    continue;
                }
                String a= s[i].substring(0,1);
                if(a.equals("A")==false&&a.equals("D")==false&&a.equals("W")==false&&a.equals("S")==false){
                    continue;
                }
                String b=s[i].substring(1);
                Boolean f= Pattern.compile("^[0-9]+$").matcher(b).find();
                if(f==false){
                    continue;
                }
                int n = Integer.parseInt(b);
                if(n<1||n>99){
                    continue;
                }
                if(a.equals("A")){
                    x=x-n;
                }else if(a.equals("D")){
                    x=x+n;
                }else if(a.equals("W")){
                    y=y+n;
                }else if(a.equals("S")){
                    y=y-n;
                }
            }
            System.out.println(x+","+y);
        }
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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