题解 | #坐标移动#

坐标移动

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);
    }
}

全部评论

相关推荐

喜欢吃蛋糕仰泳鲈鱼是我的神:字节可以找个hr 给你挂了,再放池子捞
点赞 评论 收藏
分享
黑皮白袜臭脚体育生:可以看看我的开源仿b站前后端分离微服务项目,技术栈相当先进,符合企业校招需求,具体为springboot security, nacos,openfeign,gateway,redis,elasticsearch,rocketmq,minio,mybatis-plus,mybatis-plus-join,druid,jwt,swagger,gson,hutool,websocket,讯飞星火api,jave,xxl-job,zipkin,slueth,可快速下载所有用到的中间件和远程连接中间件软件而不用麻烦的去官网找包以及只需小改存放路径就可缓存前端静态资源的nginx和前端dist包,无需会任何前端极速实现本机运行前端,所有文档教程只在牛客,有各中间件启动教程,有配套简历写法速成简历,github已经330star
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务