机器人II

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

自从xiao_wu发明了只能向左转与向右转的机器人以后,热血沸腾的他又给机器人加了一个操作。假设机器人在二维坐标系的原点,一开始面向Y轴正方向(北N),现在给你一个仅由’L’,’R’,’M’的串,其中L表示向左转,R表示向右转,M表示向所面对的方向走一个单位的距离,试问经过操作过后,机器人的坐标和所面对的方向。

北(N),西(W),东(E),南(S)。

Input

第一行输入一个T(T<150),表示任务的个数

对于每个任务,输入一个串。(每个任务开始前机器人在原点,面向北(N),既Y轴正方向)

串长度不大于100

Output

对于每个任务,输出两个数表示机器人的坐标,一个字符表示机器人的面朝的方向。

Sample Input

2

LRMLL

LMRMMLLL

Sample Output

0 1 S

-1 2 E

可以用数组存储方向,R加,L减,具体看代码。

import java.util.*;

public class Main {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
int t,x,y,f,i;
char s[] = {'N','E','S','W'};
String q;
t = cin.nextInt();
while(t-->0)
{
f = 0;
x = y = 0;
q = cin.next();
for(i=0;i<q.length();i++)
{
if(q.charAt(i)=='M')
{
if(f==0)
y++;
else if(f==2)
y--;
else if(f==1)
x++;
else if(f==3)
x--;
}
else if(q.charAt(i)=='R')
{
f++;
if(f>3)
f -= 4;
}
else if(q.charAt(i)=='L')
{
f--;
if(f<0)
f += 4;
}
}
System.out.printf("%d %d %c\n",x,y,s[f]);
}
cin.close();
}
}

Java练习 SDUT-2585_机器人II的更多相关文章

  1. java实现小九机器人接口

    package com.iask.webchat.chatmachine; import java.net.URLEncoder; import org.apache.http.HttpEntity; ...

  2. [Leetcode][JAVA] Pascal's Triangle I, II

    Pascal's Triangle: Given numRows, generate the first numRows of Pascal's triangle. For example, give ...

  3. Java for LeetCode 052 N-Queens II

    Follow up for N-Queens problem. Now, instead outputting board configurations, return the total numbe ...

  4. Java for LeetCode 047 Permutations II

    Given a collection of numbers that might contain duplicates, return all possible unique permutations ...

  5. Java for LeetCode 090 Subsets II

    Given a collection of integers that might contain duplicates, nums, return all possible subsets. Not ...

  6. java实现豆瓣回帖机器人

    最近一直帮老板写爬虫,写累了就寻思着找点乐子,碰巧平时喜欢逛豆瓣,就打算写一个自动回帖机器人,废话不多说我们进入正题: 主要用到2个开源工具:Jsoup和httpclient Step 1:模拟登陆 ...

  7. Java练习 SDUT - 2669_2-2 Time类的定义

    2-2 Time类的定义 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 通过本题目的练习可以掌握类与对象的定义: 设计 ...

  8. java接入钉钉机器人(带源码)

    前言 登录钉钉网页: https://im.dingtalk.com 登录说明文档地址,以备随时查询: https://ding-doc.dingtalk.com/doc#/serverapi2/qf ...

  9. Java实现 LeetCode 657 机器人能否返回原点(暴力大法)

    657. 机器人能否返回原点 在二维平面上,有一个机器人从原点 (0, 0) 开始.给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束. 移动顺序由字符串表示.字符 move[i ...

随机推荐

  1. 微信小程序之threejs全景

    最近在开发小程序,身心疲惫,原因是功能和app相同,我裂开了. 各种封装组件,各种写页面,不过有个好处是以前写的h5拿来改一下标签,基本上还是ok的,就剩下最后几个功能,其中就有一个VR全景功能. 移 ...

  2. python实例 字符串

    比起C/C++,Python处理字符串的方式实在太让人感动了.把字符串当列表来用吧. #! /usr/bin/python word="abcdefg" a=word[2] pri ...

  3. Centos无法连接无线网络解决办法

    系统->管理->服务器设置->服务,将NetworkManager选项勾选,点击重启服务.然后就可以看到右上角已经有了网络连接.

  4. git解决冲突的最佳方法

    用eclipse egit 去pull 代码出现冲突 点击details  全选复制到记事本上 如上图选择3个冲突中的一个   eclipse快捷键  ctrl + shift+R  张贴   回车 ...

  5. jquery输入框自动提示

    1. 下载jar包:jquery.autocomplete.js 2. 页面内容:<script type="text/javascript" src="../jq ...

  6. Leetcode914.X of a Kind in a Deck of Cards卡牌分组

    给定一副牌,每张牌上都写着一个整数. 此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组: 每组都有 X 张牌. 组内所有的牌上都写着相同的整数. 仅当你可选的 X > ...

  7. log4j日志系统

    在项目开发中,记录错误日志是一个很有必要功能.一是方便调试:二是便于发现系统运行过程中的错误:三是存储业务数据,便于后期分析: 在java中,记录日志,有很多种方式. 比如,自己实现. 自己写类,将日 ...

  8. Spring表达式语言:SpEl

    概念: 是一个支持运行时查询和操作的对象图的强大的表达式语言. 语法类似于EL:SpEl使用#{ ...}作为定界符,所有在大括号中的 字符都将被认为是SpEl SpEl为bean的属性进行动态赋值提 ...

  9. 使用Fiddler抓取到的“姐夫酷”API接口

    下午本来准备抓取些网页视频地址,做一个小的视频app,用来学习ijkplayer,无意中发现了一个app--姐夫酷,这是一个很简单的网页,它也有相应的一个比较简单的android app. 于是心血来 ...

  10. html Servlet web.xml(转)

    在浏览器输入:http://127.0.0.1:8080/test/test.html点击提交按钮,Tomcat后台输出:control: aaa's value is : bbb页面显示结果:pag ...