Boşluk hariç , yazdırılabilir ascii karakterlerin boş olmayan tek satırlık bir dizesini alan bir program veya işlev yazın :
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
Girişin geçerli olduğunu varsayabilirsiniz.
Girdiye dayanarak, kaplumbağa grafiklerini takip eden metin boşlukları ve yeni satırlar üzerinde düzenlenmiş yeni bir dize çizin - kaplumbağanın her zaman bir ızgara alanı kapladığı ve sadece kardinal yönlere bakabileceği benzersiz kurallar.
Giriş dizesindeki ilk karakteri metin ızgarasına yazdırın. Kaplumbağa burada sağa bakacak şekilde başlar. Giriş dizesindeki diğer karakterleri yineleyin (yalnızca kaplumbağa takılırsa durur), bu işlemi tekrarlayın:
Kaplumbağaya doğrudan komşu olan 4 ızgara alanının tümü doldurulursa (yani hiçbiri boşluk değildir), yinelemeyi durdurun. Kaplumbağa sıkışmış ve ızgara olabildiğince eksiksiz.
Önceki karakterle karşılaştırıldığında girişteki geçerli karaktere bakın:
Eğer mevcut karakter sözcük olarak öncekinden önce ise, kaplumbağayı çeyrek tur sola döndürün.
Eğer mevcut karakter bir öncekinden sonra sözcüksel olarak varsa, kaplumbağayı çeyrek tur sağa döndürün.
Mevcut karakter öncekine eşitse, kaplumbağayı döndürmeyin.
Kaplumbağanın şimdi karşı karşıya olduğu ızgara alanı boş değilse (yani boşluk değil), kaplumbağayı boş bir ızgara alanına bakana kadar çeyrek tur sola döndürün.
Kaplumbağayı bir ızgara ileriye doğru bir adım ileriye doğru hareket ettirin ve mevcut karakteri kaplumbağanın yeni konumundaki ızgaraya yazdırın.
Sonuçta ortaya çıkan metin ızgara dizesini, boşluk satırları veya boşlukları olmadan yazdırın veya döndürün. Çizgiler, en sağdaki sütuna kadar boşluk olmayan bir boşluk içerebilir, ancak ötesinde olamaz. İsteğe bağlı olarak tek bir satırsonuna izin verilir.
Bayt cinsinden en kısa kod kazanır.
Misal
İşte girdinin tüm adımları spattuuxze
. ^V<>
Karakter kaplumbağa karşı karşıya yönünü göstermek, bunlar değil giriş veya çıkış parçası.
s>
^
p
s
<ap
s
^
t
ap
s
^
t
t
ap
s
tu>
t
ap
s
tuu>
t
ap
s
tuu
t x
apV
s
tuu
<zx
ap
s
Bu noktada kaplumbağa sıkışır, böylece e
asla basılmaz ve son çıktı:
tuu
tzx
ap
s
Aşağıdakine benzer, ancak geçersiz bir boşluk olduğu için boşluk alanı gereksizdir:
tuu
tzx
ap
s
Test Durumları
spattuuxze
tuu
tzx
ap
s
spattuuxxze
tuu
t x
apx
sze
1111111
1111111
ABCDEFGHIJKLMNOP
PEFG
ODAH
NCBI
MLKJ
`_^]\[ZYXWVUTSR
^_RS
\]`UT
[ZWV
YX
Woo!
W
o
o!
woo!
!o
o
w
Wheeee
W
heeee
banana
a
an
an
b
Turtle
T
ure
tl
turTle
e
tTl
ur
(Bunlardan herhangi biri yanlış görünüyorsa hemen söyle.)
PONMLKJIHGFEDCBA
, çünkü sonuç sadece bir kare değil ABCDEFGHIJKLMNOP
ve kurallardaki asimetriyi vurgulamakla çelişiyor .