Де я зараз?
Давши рядок d, що містить лише літери NSWE, визначте координати, якими я подорожував (зліва направо, жадібно споживаючи) та кінцеву координату, де я проживаю.
Правила зчитування координат зліва направо:
- Якщо наступним символом є
NабоS:- Якщо персонаж після
NабоSє іншимNабоS:- Споживайте лише перший
NабоS. - Вихід
[0,1]дляN - Вихід
[0,-1]дляS
- Споживайте лише перший
- Якщо символ після
NабоSєWабоE:- Споживайте як
Nабо, такSіWабоE. - Вихід
[1,1]або[-1,1]дляNEіNW, відповідно. - Вихід
[1,-1]або[-1,-1]дляSEіSW, відповідно.
- Споживайте як
- Якщо персонаж після
- Якщо символ є
EабоWне передуєSабоN:- Споживайте
EабоW. - Вихід
[1,0]дляE. - Вихід
[-1,0]дляW.
- Споживайте
Приклад роботи
NSWE
[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"
І т.д. ...
Більше прикладів
SWSENNESWNE
[-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]
NENENEE
[1,1]
[1,1]
[1,1]
[1,0]
[4,3]
NEN
[1,1]
[0,1]
[1,2]
EEE
[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не повинно мати значення?