题解 | #坐标移动#

坐标移动

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

import java.util.*;
import java.io.*;
public class Main{
    public static void main(String[] args) throws IOException {
        BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
        String[] in = bf.readLine().split(";");//分隔字符 
        int x = 0;
        int y = 0;
        //确认初始坐标
        for(String s : in){//遍历
            // 不满足题目给定坐标规则
            if(!s.matches("[WASD][0-9]{1,2}")){/*正则过滤
            []用于匹配一组字符中的任意一个。例如,[abc]可以匹配a、b或者c。
            还可以用范围表示,如[a-z]匹配小写字母,[A-Z]匹配大写字母,[0-9]匹配数字。
            表示前面的元素出现次数在n到m之间(包括n和m)。例如,a{1,3}可以匹配a、aa、aaa。*/
                continue;
            }
            int val = Integer.valueOf(s.substring(1));//截取字符串从1的位置到末尾
            switch(s.charAt(0)){
                /*用于获取字符串 s 中索引为 0 的字符的方法。例如,如果
                 s = "hello",那么 s.charAt (0) 将返回 "h"。*/
                case 'W':
                    y += val;
                    break;
                case 'S':
                    y -= val;
                    break;
                case 'A':
                    x -= val;
                    break;
                case 'D':
                    x += val;
                    break;
            }
        }
        System.out.println(x+","+y);
    }
}

全部评论

相关推荐

在瑞幸干两年,奥特曼都得闪灯
不知名的牛友:奥特曼每天只上3分钟班
点赞 评论 收藏
分享
头顶尖尖的程序员:我也是面了三四次才放平心态的。准备好自我介绍,不一定要背熟,可以记事本写下来读。全程控制语速,所有问题都先思考几秒,不要急着答,不要打断面试官说话。
点赞 评论 收藏
分享
06-17 21:57
门头沟学院 Java
白友:噗嗤,我发现有些人事就爱发这些,明明已读不回就行了,就是要恶心人
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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