Où suis-je maintenant?
Étant donné une chaîne d , contenant uniquement les lettres NSWE, déterminez les coordonnées que j'ai parcourues (de gauche à droite, en consommant goulûment) et la coordonnée finale où je réside.
Les règles de lecture des coordonnées de gauche à droite:
- Si le caractère suivant est
NouS:- Si le caractère après le
NouSest un autreNouS:- Consommez seulement le premier
NouS. - Production
[0,1]pourN - Sortie
[0,-1]pourS
- Consommez seulement le premier
- Si le caractère après le
NouSestWouE:- Consommez à la fois le
NouSet leWouE. - Sortie
[1,1]ou[-1,1]pourNEetNW, respectivement. - Sortie
[1,-1]ou[-1,-1]pourSEetSW, respectivement.
- Consommez à la fois le
- Si le caractère après le
- Si le caractère est un
EouWnon précédé d'unSouN:- Consommez le
EouW. - Sortie
[1,0]pourE. - Sortie
[-1,0]pourW.
- Consommez le
Exemple travaillé
NSWE
[0,1] (North N)
[-1,-1] (South-west SW)
[1,0] (East E)
[0,0] (N+SW+E = Didn't actually move)
Notez que cela peut être dans n'importe quel format, voici d'autres exemples de sortie valide:
[[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"
Etc...
Plus d'exemples
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]
Règles
- Vous pouvez produire dans n'importe quel format pratique qui ne viole pas les failles.
- Il faut consommer goulûment, ce
NWEn'est jamaisN,W,E, c'est toujoursNW,E.- Ceci est valable pour:
SW*,SE*,NW*,NE*. - Vous consommez de gauche à droite, avidement.
- Ceci est valable pour:
- C'est le code-golf , le plus petit nombre de victoires.
[4, 3]ou ainsi faciliterait un peu plus facilement ce qui se passe dans la sortie de test.
1, -1j, (-1+1j)etc un format de sortie valide?
NEc'est juste, N+Eça ne devrait pas avoir d'importance?