Gdzie teraz jestem?
Biorąc pod uwagę ciąg znaków d, zawierający tylko litery NSWE, określ współrzędne, które podróżowałem (od lewej do prawej, pochłaniając zachłannie) i ostateczną współrzędną, w której przebywam.
Reguły odczytu współrzędnych od lewej do prawej:
- Jeśli następnym znakiem jest
NlubS:- Jeśli znak po
NlubSjest innyNlubS:- Spożywać tylko pierwszy
NlubS. - Wyjście
[0,1]dlaN - Wyjście
[0,-1]dlaS
- Spożywać tylko pierwszy
- Jeśli znak po
NalboSjestWalboE:- Spożywać oba
NlubSiWlubE. - Dane wyjściowe
[1,1]lub odpowiednio[-1,1]dlaNEiNW. - Dane wyjściowe
[1,-1]lub odpowiednio[-1,-1]dlaSEiSW.
- Spożywać oba
- Jeśli znak po
- Jeśli znak jest
ElubWnie poprzedzoneSlubN:- Spożywać
ElubW. - Wyjście
[1,0]dlaE. - Wyjście
[-1,0]dlaW.
- Spożywać
Przykład działania
NSWE
[0,1] (North N)
[-1,-1] (South-west SW)
[1,0] (East E)
[0,0] (N+SW+E = Didn't actually move)
Uwaga: może to być dowolny format, oto inne przykłady prawidłowych danych wyjściowych:
[[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"
Itp...
Więcej przykładów
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]
Zasady
- Możesz drukować w dowolnym dogodnym formacie, który nie narusza luk.
- Musisz jeść łapczywie,
NWEnigdyN,W,Enie jest, zawsze jestNW,E.- Dotyczy to:
SW*,SE*,NW*,NE*. - Chciwie pochłaniasz od lewej do prawej.
- Dotyczy to:
- Jest to golf golfowy , wygrywa najmniej bajtów.
[4, 3]ułatwiłby nieco zobaczenie, co się dzieje w wyniku testu.
1, -1j, (-1+1j)etc poprawny format wyjściowy?
NEczy to N+Enie powinno mieć znaczenia?