NYOJ 371 机器人II
来源:互联网 发布:centos怎么下载软件 编辑:程序博客网 时间:2024/05/23 02:03
机器人II
时间限制:1000 ms | 内存限制:65535 KB
难度:1
- 描述
自从xiao_wu发明了只能向左转与向右转的机器人以后,热血沸腾的他又给机器人加了一个操作。假设机器人在二维坐标系的原点,一开始面向Y轴正方向(北N),现在给你一个仅由’L’,’R’,’M’的串,其中L表示向左转,R表示向右转,M表示向所面对的方向走一个单位的距离,试问经过操作过后,机器人的坐标和所面对的方向。
北(N),西(W),东(E),南(S)。
- 输入
- 第一行输入一个T(T<150),表示任务的个数
对于每个任务,输入一个串。(每个任务开始前机器人在原点,面向北(N),既Y轴正方向)
串长度不大于100 - 输出
- 对于每个任务,输出两个数表示机器人的坐标,一个字符表示机器人的面朝的方向。
- 样例输入
2LRMLLLMRMMLLL
- 样例输出
0 1 S-1 2 E
- 来源
- GDUT校赛
- 上传者
ACM_李如兵
思路:将北 东 南 西 分别用数字0 1 2 3 表示出来 再 利用dir=0向左时候(dir-1+4)%4 右边(dir+1)%4 这是为了确定方向
再利用dir的值
模拟坐标系0向北 y++ 1向东x++ 2向南y-- 3向西x++
#include<stdio.h>#include<string.h>int main(){ int t; scanf("%d",&t); char a[4]={'N','E','S','W'},s[101]; while(~scanf("%s",s)) { int l,dir=0,x=0,y=0; l=strlen(s); for(int i=0;i<l;i++) { if(s[i]=='L') dir=(dir+3)%4; if(s[i]=='R') dir=(dir+1)%4; if(s[i]=='M') { if(dir==0) y++; if(dir==1) x++; if(dir==2) y--; if(dir==3) x--; } } printf("%d %d %c\n",x,y,a[dir]); } return 0;}
0 0
- NYOJ 371 机器人II
- nyoj-371-机器人II
- NYOJ 371 机器人II
- NYOJ 371 机器人II
- nyoj 题目371 机器人II
- NYOJ 371 机器人II【简单题】
- NYOJ 第371题 机器人II
- NYOJ 371题 机器人二
- NYOJ-1250-机器人
- 机器人II解题报告
- NYOJ371-机器人II
- 机器人走方格II
- 机器人走方格II
- ACM_机器人II
- NYOJ---414 Problem II
- nyoj-699-Sawthooth II
- nyoj-弹球II
- NYOJ 374 弹球II
- int_64 与 字符串相互转化
- 【转】计算机视觉领域的一些牛人博客,超有实力的研究机构等的网站链接
- 什么是Spark
- 使用Matlab实现图形的刻度,分格线和坐标框
- 浏览器状态码汇总(404,505,200)
- NYOJ 371 机器人II
- 待到山花烂漫,笑在丛中
- poj 3040 Allowance (贪心)
- 黑马程序员-- 六、多线程
- unbutu 安装java教程
- 线程相关函数讲解
- stm32f4xx_it.c: Error: C3065E: type of input file 'DRIVER' unknown 解决办法
- 为什么是“51-android.rules”?
- Sicily 1822. Fight Club