题解 | #坐标移动#

坐标移动

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

import java.io.; import java.util.regex.;

public class Main{ public static void main(String args[]) throws Exception{ String inpudWord = ""; BufferedReader buff = new BufferedReader(new InputStreamReader(System.in)); inpudWord = buff.readLine().toLowerCase(); String arr[] = inpudWord.split(";"); int result[] = {0,0}; //A10;S20;W10;D30;X;A1A;B10A11;;A10; for(int i=0;i<arr.length;i++){ result = cpt(arr[i].trim(),result[0],result[1]); } System.out.println(result[0]+","+result[1]); } public static int[] cpt(String word,int hResult,int zResult){ //a,b为相反的方向 String regex = "1.*\d$"; Pattern p = Pattern.compile(regex); Matcher m = p.matcher(word); if (m.matches()) { //匹配正则表达式 if (word.substring(1).length()>2) return new int[] {hResult,zResult}; if (word.charAt(0)=='a' ){ hResult -= Integer.parseInt(word.substring(1)); }//左移 if (word.charAt(0)=='d' ){ hResult += Integer.parseInt(word.substring(1)); }//右移 if (word.charAt(0)=='w' ){ zResult += Integer.parseInt(word.substring(1)); }//上移动 if (word.charAt(0)=='s' ){ zResult -= Integer.parseInt(word.substring(1)); }//下移 return new int[] {hResult,zResult}; } else { return new int[] {hResult,zResult}; } } }


  1. wasd
全部评论

相关推荐

2025-12-31 14:19
门头沟学院 产品经理
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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