题解 | #坐标移动#
坐标移动
https://www.nowcoder.com/practice/119bcca3befb405fbe58abe9c532eb29
import java.util.*;
public class Main {
    static int x = 0;
    static int y = 0;
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) { // 注意 while 处理多个 case
            String s = in.nextLine();
            String[] words = s.split(";");
            for (String word : words) {
                if (validate(word)) {
                    handle(word);
                }
            }
            System.out.println(x+ "," + y);
        }
    }
    private static void handle(String str) {
        String dir =  str.substring(0,1);
        int num = Integer.parseInt(str.substring(1));
        switch (dir) {
            case "A": x -= num ; break;
            case "D": x += num; break;
            case "W": y += num; break;
            case "S": y -= num; break;
        }
    }
    private static boolean validate (String str){
        if (str.length() == 0) return false;
        String dir = str.substring(0,1);
        String num = str.substring(1);
        if (!dir.equals("A") &&
                !dir.equals("D") && !dir.equals("W") && !dir.equals("S") ) {
            return false;
        }
        try {
            Integer integer = Integer.parseInt(num);
            if (integer < 100){
                return true;
            }
        } catch (Exception e) {
            return false;
        }
        return true;
    }
}
 投递字节跳动等公司10个岗位
投递字节跳动等公司10个岗位
