分析题意可知 立方体展开后就是一个3X3的平面连接到一起 直接模拟就可
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int a[3][3]={1,2,1,2,3,2,1,2,1};//1是红色 2是蓝色 3是绿色
int parameter;//参数的值代表现在机器人面向的方向
int x=1,y=1;
void turn()//移动
{
if (parameter==0)
{
x--;
if (x<0)
x=2;
}
if (parameter==1||parameter==-3)
{
y++;
if (y>2)
y=0;
}
if (parameter==2||parameter==-2)
{
x++;
if (x>2)
x=0;
}
if (parameter==3||parameter==-1)
{
y--;
if (y<0)
y=2;
}
}
void step(string s)
{
int i;
for (i=0;s[i];i++)
{
if (s[i]=='W')
{
turn();
}
if (s[i]=='L')
{
parameter+=1;
if (parameter==4||parameter==-4)
{
parameter=0;
}
}
if (s[i]=='R')
{
parameter-=1;
if (parameter==4||parameter==-4)
{
parameter=0;
}
}
}
if (a[x][y]==1)
printf("RED");
if (a[x][y]==2)
printf("BLUE");
if (a[x][y]==3)
printf("GREEN");
}
int main()
{
string s;
cin>>s;
step(s);
return 0;
}