题解 | #坐标移动#
坐标移动
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);
// 注意 hasNext 和 hasNextLine 的区别
String s=in.nextLine();
String[] ss= s.split(";");
int len=ss.length;
// for(int t=0;t<len;t++)
// {
// System.out.println(ss[t]);
// }
int[] xy=new int[2]; //0x 1y
for(int i=0;i<len;i++)
{
int flag=0;
if(ss[i].equals("")) continue;
for(int k=1;k<ss[i].length();k++) //检验是否无效
{
if(ss[i].charAt(k)>'9'||ss[i].charAt(k)<'0') flag=1; //无效
}
if(ss[i]!=null&&flag==0)
{
int mov=0;
for(int g=1;g<ss[i].length();g++) //统计移动距离
{
mov=mov*10+(int)(ss[i].charAt(g)-'0');
}
//System.out.printf("i=%d:mov=%d\n",i,mov);
if(ss[i].charAt(0)=='A')
{
xy[0]-=mov;
}
else if(ss[i].charAt(0)=='S')
{
xy[1]-=mov;
}
else if(ss[i].charAt(0)=='W')
{
xy[1]+=mov;
}
else if(ss[i].charAt(0)=='D')
{
xy[0]+=mov;
}
else
{
continue;
}
}
}
System.out.printf("%d,%d",xy[0],xy[1]);
}
}
