网易校招题之迷路的牛牛
题目描述
牛牛去犇犇老师家补课,出门的时候面向北方,但是现在他迷路了。虽然他手里有一张地图,但是他需要知道自己面向哪个方向,请你帮帮他。
输入描述:
每个输入包含一个测试用例。 每个测试用例的第一行包含一个正整数,表示转方向的次数N(N<=1000)。 接下来的一行包含一个长度为N的字符串,由L和R组成,L表示向左转,R表示向右转。
输出描述:
输出牛牛最后面向的方向,N表示北,S表示南,E表示东,W表示西。
示例1
输入
3 LRR
输出
E
L = -1;
R= 1;
| -3 | -2 | -1 | 0 | 1 | 2 | 3 |
| 东 | 南 | 西 | 北 | 西 | 南 | 东 |
#include<bits/stdc++.h>
using namespace std;
int main()
{
int cnt;
map<int,char> m;
m.insert({0,'N'});
m.insert({1,'E'});
m.insert({2,'S'});
m.insert({3,'W'});
cin>> cnt;
cin.ignore();
string s;
getline(cin,s);
int res = 0;
int n = s.size();
for(int i = 0 ; i<n;i++)
{
if(s[i]=='L')
{
res--;
}
else if(s[i]=='R')
{
res++;
}
}
while(res<0)
{
res += 4;
}
int ans = res%4;
char ans1 = m[ans];
cout << ans1<< endl;
return 0;
}
查看13道真题和解析