我现在在哪里?
给定一个d仅包含字母的字符串,NSWE确定我经过的坐标(从左到右,贪婪地消耗)以及我所居住的最终坐标。
从左到右读取坐标的规则:
- 如果下一个字符是
N或S:- 如果
N或之后的字符S是另一个N或S:- 仅消耗第一个
N或第二个S。 - 输出
[0,1]为N - 输出
[0,-1]为S
- 仅消耗第一个
- 如果
N或之后的字符S是W或E:- 同时使用
NorS和WorE。 - 输出
[1,1]或分别[-1,1]用于NE和NW。 - 输出
[1,-1]或分别[-1,-1]用于SE和SW。
- 同时使用
- 如果
- 如果字符前面是
E或W之前不是S或N:- 消费
E或W。 - 输出
[1,0]为E。 - 输出
[-1,0]为W。
- 消费
工作实例
西非国家统计局
[0,1] (North N)
[-1,-1] (South-west SW)
[1,0] (East E)
[0,0] (N+SW+E = Didn't actually move)
请注意,这可以是任何格式,以下是有效输出的其他示例:
[[0,1],[-1,-1],[1,0],[0,0]]
[[[0,1],[-1,-1],[1,0]],[0,0]]
"0,1\n0,-1\n-1,0\n1,0\n0,0"
等等...
更多例子
斯威士尼
[-1,-1]
[1,-1]
[0,1]
[1,1]
[-1,-1]
[1,1]
[1,0]
NNEESESSWWNW
[0,1]
[1,1]
[1,0]
[1,-1]
[0,-1]
[-1,-1]
[-1,0]
[-1,1]
[0,0]
尼尼
[1,1]
[1,1]
[1,1]
[1,0]
[4,3]
EN
[1,1]
[0,1]
[1,2]
电子电气设备
[1,0]
[1,0]
[1,0]
[3,0]
规则
- 您可以以任何不违反漏洞的方便格式输出。
- 您必须贪婪地消费,
NWE永远不要N,W,E,永远都是NW,E。- 适用于:
SW*,SE*,NW*,NE*。 - 您正在从左到右贪婪地消费。
- 适用于:
- 是代码高尔夫,最低字节数获胜。
[4, 3]将使它更容易看到测试输出中发生了什么。
1,-1j,(-1+1j)等一个有效的输出格式?
NE不是N+E应该没关系吗?