• 371 机器人2


     

    机器人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 
    输出
    对于每个任务,输出两个数表示机器人的坐标,一个字符表示机器人的面朝的方向。
    样例输入
    2
    LRMLL
    LMRMMLLL
    样例输出
    0 1 S
    -1 2 E


     1 #include<stdio.h>
     2 #include<string.h>
     3 
     4 char b[]={'N','W','S','E'};
     5 
     6 int main()
     7 {
     8     int i,j,t,len,x,y;
     9     char a[105];
    10     scanf("%d",&t);
    11     while(t--)
    12     {
    13         scanf("%s",a);
    14         len=strlen(a);
    15         x=y=j=0;
    16         for(i=0;i<len;i++)
    17         {
    18             if(a[i]=='L')  j=(j+1+4)%4;
    19             else if(a[i]=='R') j=(j-1+4)%4;
    20             else
    21             {
    22                 if(j==0) y++;
    23                 else if(j==1) x--;
    24                 else if(j==2) y--;
    25                 else x++;
    26             }
    27         }
    28         printf("%d %d %c\n",x,y,b[j]);
    29     }
    30     return 0;
    31 }
  • 相关阅读:
    dependencyManagement、parent与dependencies
    maven和gradle中,dependency和plugin的区别
    SpringMVC与Struts2区别
    RESTful风格与RESTful Api
    DBCP连接池配置参数
    js 函数的传值问题
    js 重载i
    js 对象与函数的区别
    子窗口 父窗口传值
    验证码
  • 原文地址:https://www.cnblogs.com/xiaofanke/p/3091477.html
Copyright © 2020-2023  润新知