Bir döndürme miktarı, ayna görüntüsü gibi görünmesini sağlayamazsa , şekil şiraldir . Bu yapbozda kiral bilgisayar programları yazacağız.
Bu yapboz için bir programı karakterlerin dikdörtgen matrisi olarak düşüneceğiz. Bu nedenle, bu zorluğa yönelik tüm çözümler dikdörtgen olmalıdır (tüm satırlar aynı uzunlukta olmalıdır). Bu programları çeyrek tur artışlarla döndürebiliriz. Örneğin program
The quickish fish
lept deftly
rightwards
Çeyrek dönüş saat yönünde döndürüldüğünde
T
h
r e
i
glq
heu
tpi
wtc
a k
rdi
des
sfh
t
lf
yi
s
h
Bu programları da yansıtabiliriz. Dikey eksen üzerinde yansıyan aynı program:
hsif hsikciuq ehT
yltfed tpel
sdrawthgir
Kiral program, herhangi bir sayıda döndürüldüğünde her zaman " left
" çıktısını alacağı bir programdır . Ancak yansıyan, right
kaç kez döndürüldüğü önemli değil, " " çıktı veren bir program üretir .
Göreviniz, mümkün olduğu kadar az bayt cinsinden kiral bir program yazmaktır.
Ek Kurallar
Çıktı büyük / küçük harf duyarlı değildir, ancak tutarlı olmalıdır. (örneğin, "
LEFT
" ve "rIgHt
" çıktısını alabilirsiniz, ancak bu muhafaza rotasyonlar altında tutarlı olmalıdır)Satırlar ya yeni bir satırda ya da yeni bir satırda ve bir satır beslemesinde bölünür.
Programınız bir dikdörtgen olmalı, boşluk ya da yorumlar ile doldurabilirsiniz, ancak her satır aynı uzunlukta olmalıdır.
İsterseniz isteğe bağlı olarak tüm programlarınızda takip eden bir yeni satır (veya yeni satır ve satır besleme) olabilir.
:set virtualedit=all
modu ile birlikte kullandım . İlk Bool
çıkış, girişin kendi rotasyonuna eşit olup olmadığını kontrol eder, bu da işleri kolaylaştırır. Çıkarma, {-
yansıtılan girişi yazdırır.