题解 | #坐标移动#
坐标移动
https://www.nowcoder.com/practice/119bcca3befb405fbe58abe9c532eb29
import java.util.Scanner;
import java.util.regex.Pattern;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String input = in.nextLine();
String[] zbStrArr = input.split(";");
Integer[] rArr = new Integer[] {0, 0};
for (String str : zbStrArr) {
if (str.isEmpty()) {
continue;
}
String inputFlag = str.substring(0, 1);
// 判断是否无效
if ( "A".equals(inputFlag) ||
"D".equals(inputFlag) ||
"S".equals(inputFlag) ||
"W".equals(inputFlag) ) {
} else {
continue;
}
if (str.substring(1).length() > 2 || str.substring(1).length() == 0) {
continue;
}
if (!isNumeric(str.substring(1)) ) {
continue;
}
Integer f = Integer.valueOf(str.substring(1));
if ("A".equals(inputFlag)) {
rArr[0] = rArr[0] - f;
} else if ("D".equals(inputFlag)) {
rArr[0] = rArr[0] + f;
} else if ("S".equals(inputFlag)) {
rArr[1] = rArr[1] - f;
} else if ("W".equals(inputFlag)) {
rArr[1] = rArr[1] + f;
}
}
System.out.print(rArr[0] + "," + rArr[1]);
}
public static boolean isNumeric(String str) {
Pattern pattern = Pattern.compile("[0-9]*");
return pattern.matcher(str).matches();
}
}

小天才公司福利 1313人发布