生活随笔
收集整理的這篇文章主要介紹了
机器人II(sdutoj2585)-JAVA
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Description
自從xiao_wu發(fā)明了只能向左轉(zhuǎn)與向右轉(zhuǎn)的機(jī)器人以后,熱血沸騰的他又給機(jī)器人加了一個(gè)操作。假設(shè)機(jī)器人在二維坐標(biāo)系的原點(diǎn),一開始面向Y軸正方向(北N),現(xiàn)在給你一個(gè)僅由’L’,’R’,’M’的串,其中L表示向左轉(zhuǎn),R表示向右轉(zhuǎn),M表示向所面對(duì)的方向走一個(gè)單位的距離,試問(wèn)經(jīng)過(guò)操作過(guò)后,機(jī)器人的坐標(biāo)和所面對(duì)的方向。
北(N),西(W),東(E),南(S)。
Input
第一行輸入一個(gè)T(T<150),表示任務(wù)的個(gè)數(shù)
對(duì)于每個(gè)任務(wù),輸入一個(gè)串。(每個(gè)任務(wù)開始前機(jī)器人在原點(diǎn),面向北(N),既Y軸正方向)
串長(zhǎng)度不大于100
Output
對(duì)于每個(gè)任務(wù),輸出兩個(gè)數(shù)表示機(jī)器人的坐標(biāo),一個(gè)字符表示機(jī)器人的面朝的方向。
Sample
Input
2
LRMLL
LMRMMLLL
Output
0 1 S
-1 2 E
Hint
import java
.util
.*
;public class Main {public static void main(String
[] args
) {Scanner reader
= new Scanner(System
.in
);int t
= reader
.nextInt();int i
, j
;String s
;char direction
;int x
, y
;for(i
= 1; i
<= t
; i
++) {s
= reader
.next();char a
[] = s
.toCharArray();x
= y
= 0; direction
= 'N';for(j
= 0; j
< s
.length(); j
++) {if(a
[j
] == 'L') {if(direction
== 'N')direction
= 'W';else if(direction
== 'W')direction
= 'S';else if(direction
== 'S')direction
= 'E';else if(direction
== 'E')direction
= 'N';} else if(a
[j
] == 'R') {if(direction
== 'N')direction
= 'E';else if(direction
== 'E')direction
= 'S';else if(direction
== 'S')direction
= 'W';else if(direction
== 'W')direction
= 'N';} else if(a
[j
] == 'M') {if(direction
== 'N')y
++;else if(direction
== 'W')x
--;else if(direction
== 'S')y
--;else if(direction
== 'E')x
++;}}System
.out
.println(x
+" "+y
+" "+direction
);}reader
.close();}}
總結(jié)
以上是生活随笔為你收集整理的机器人II(sdutoj2585)-JAVA的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。