机器人II


 1 /*机器人II
2 时间限制:1000 ms | 内存限制:65535 KB
3 难度:1
4 描述
5 自从xiao_wu发明了只能向左转与向右转的机器人以后,热血沸腾的他又给机器人加了一个操作。假设机器人在二维坐标系的原点,
6 一开始面向Y轴正方向(北N),现在给你一个仅由’L’,’R’,’M’的串,其中L表示向左转,R表示向右转,M表示向所面对的方向走一个单位的距离,
7 试问经过操作过后,机器人的坐标和所面对的方向。
8 北(N),西(W),东(E),南(S)。
9 输入
10 第一行输入一个T(T<150),表示任务的个数
11 对于每个任务,输入一个串。(每个任务开始前机器人在原点,面向北(N),既Y轴正方向)
12 串长度不大于100
13 输出
14 对于每个任务,输出两个数表示机器人的坐标,一个字符表示机器人的面朝的方向。
15 样例输入
16 2
17 LRMLL
18 LMRMMLLL
19 样例输出
20 0 1 S
21 -1 2 E
22 来源
23 GDUT校赛
24 上传者
25 ACM_李如兵
26 */
27 #include<stdio.h>
28 #include<string.h>
29 int main()
30 {
31 int x, y, t, n;
32 char drict, s[101];
33 scanf("%d", &t);
34 while(t--)
35 {
36 x = y = 0;
37 drict = ‘N‘;
38 scanf("%s", s);
39 n = strlen (s);
40 int i;
41 for( i = 0; i< n; i++)
42 {
43 if( drict == ‘N‘)
44 {
45 if(s[i] == ‘L‘)
46 drict = ‘W‘;
47 else if( s[i] == ‘R‘)
48 drict = ‘E‘;
49 else
50 y++;
51 }
52 else if( drict == ‘S‘)
53 {
54 if(s[i] == ‘L‘)
55 drict = ‘E‘;
56 else if( s[i] == ‘R‘)
57 drict = ‘W‘;
58 else
59 y--;
60 }
61 else if( drict == ‘W‘)
62 {
63 if(s[i] == ‘L‘)
64 drict = ‘S‘;
65 else if( s[i] == ‘R‘)
66 drict = ‘N‘;
67 else
68 x--;
69 }
70 else
71 {
72 if(s[i] == ‘L‘)
73 drict = ‘N‘;
74 else if( s[i] == ‘R‘)
75 drict = ‘S‘;
76 else
77 x++;
78 }
79 }
80 printf("%d %d %c\n", x, y, drict);
81 }
82 return 0;
83 }

机器人II,码迷,mamicode.com

时间: 2024-10-09 12:03:21

机器人II的相关文章

UVA10599 - Robots(II)(变形的LIS)

题意:一个机器人在n * m的网格里面捡垃圾,机器人只能向右或向下走,求出能捡到的垃圾数量的最大值,有多少条路径可以达到最大值,以及输出其中一条路径. 思路:按照题意可以看出,因为机器人只能向右和向下走,所以纵坐标就不重要的,而横坐标是递增的.当将所有拥有垃圾的格子经过计算得到它的一维值(唯一的),得到一组的数组.那就可以转化为求最长上升子序列.但这个LIS的条件是mod(m)要大于前一个.计算数量时,当d[i] = d[j] + 1时,就相当于以i为结束时的最长上升子序列比以j结束时的最长上升

HNU 13411 Reverse a Road II(最大流+BFS)经典

Reverse a Road II Time Limit: 10000ms, Special Time Limit:25000ms, Memory Limit:65536KB Total submit users: 10, Accepted users: 6 Problem 13411 : No special judgement Problem description JAG Kingdom is a strange kingdom such that its N cities are con

Unique Paths II leetcode java

题目: Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. How many unique paths would there be? An obstacle and empty space is marked as 1 and 0 respectively in the grid. For example, There is one obstacle in the m

V-rep学习笔记:机器人模型创建3—搭建动力学模型

接着之前写的V-rep学习笔记:机器人模型创建2-添加关节继续机器人创建流程.如果已经添加好关节,那么就可以进入流程的最后一步:搭建层次结构模型和模型定义(build the model hierarchy and finish the model definition).但是想要进行动力学仿真(碰撞.接触.自由落体...)的话,还需要进行额外的一些操作: Building the dynamic shapes VREP中几何体的属性可以分为: dynamic or static: 具有动态属性

Leetcode 动态规划 Unique Paths II

本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie Unique Paths II Total Accepted: 13655 Total Submissions: 49081My Submissions Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. How many unique paths would t

UVA - 10599Robots(II)(LIS)

题目: UVA - 10599Robots(II)(LIS) 题目大意:一个N * M 的矩阵,上面有些格子上有垃圾,现在要求一个机器人从1,1的格子出发,往右或是往下走最终到达N * M各格子,沿途要收集最多的垃圾.现在将垃圾编号,要求输出最多能清理的垃圾并且输出这样的清理路线有多少条,输出其中字典序最小的那一条. 解题思路:一开始还以为是简单的dp,结果输出发现路径多了好多条,才发现题意理解的有问题,它只计算捡的垃圾的不同,走哪个格子并不考虑.因为要求要从1,1 到N * M ,并且只能往右

Uva 10599 - Robots(II) (dp + 记录路径)

Problem K Robots(II) Time Limit 1 Second Your company provides robots that can be used to pick up litter from fields after sporting events and concerts. Before robots are assigned to a job, an aerial photograph of the field is marked with a grid. Eac

【聊天机器人篇】--聊天机器人从初始到应用

一.前述 维基百科中的机器人是指主要用于协助编者执行大量自动化.高速或机械式.繁琐的编辑工作的计算机程序或脚本及其所登录的帐户. 二.具体 1.最简单的就是基于Rule-Base的聊天机器人. 也就是计算设计好语料库的问答语句. 就是小学生级别的 问什么 答什么 import random # 打招呼 greetings = ['hola', 'hello', 'hi', 'Hi', 'hey!','hey'] # 回复打招呼 random_greeting = random.choice(gr

从零开始优化基于RuleBased的聊天机器人

这里记录从最基础的基于规则的聊天机器人,升级到基于逻辑的机器人,再升级到调用Google提供的API来让机器人能说.会听普通话. 最基本的完全基于规则式的问答:问什么就答什么,幼儿园水平. import random # 打招呼greetings = ['hola', 'hello', 'hi', 'Hi', 'hey!','hey']# 回复打招呼random_greeting = random.choice(greetings) # 对于"你怎么样?"这个问题的回复question