藍橋杯練習題:機器人(java)
阿新 • • 發佈:2019-01-12
package lanqiaobei; import java.util.HashMap; import java.util.Scanner; /* 蒜頭君收到了一份禮物,是一個最新版的機器人。這個機器人有4種指令: 1. forward x,前進 x 米。 2. back x,先向後轉,然後前進 x 米。 3. left x,先向左轉,然後前進 x 米。 4. right x,先向右轉,然後前進 x 米。 現在把機器人放在座標軸原點,起始朝向為 x 軸正方向。經過一系列指令以後,你能告訴蒜頭君機器人的座標位置嗎。座標軸上一個單位長度表示 1 米。 */ public class Robot { public static int[] res={0,0}; public static void main(String[] args) { //方向順時針改變 Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int x=0; int y=0; //0 右,1 下,2 左 ,3 上 int direction=0; for (int i = 0; i <n ; i++) { direction = juge(sc.next(),direction); switch (direction){ case 0: x+=sc.nextInt(); break; case 1: y-=sc.nextInt(); break; case 2: x-=sc.nextInt();break; case 3: y+=sc.nextInt();break; } } System.out.println(x+" "+y); } public static int juge(String j,int direction){ switch (j){ case "forward": direction = direction; break; case "back": direction = (direction+2)%4; break; //==-1; case "left": direction = (direction+3)%4; break; case "right":direction = (direction+1)%4; break; } return direction; } }