Eşikler , genellikle geometrik şekillerin simetrik düzenlemelerinden yapılan karma değerlerin görsel tasviridir. Varsayılan Stack Exchange avatarınız bir özdeşliktir. Bu zorluk, " küçük harflerin dizeleri için geçerli olan sözcüklerin basit metin temelli sürümleri olan " wordenticons " kelimelerinin oluşturulmasıdır.
Meydan okuma
S dizesini alan ve wordenticon'unu çıkaran bir program veya işlev yazın. S'nin boş olmadığı garanti edilir ve yalnızca küçük harf İngilizce az karakterleri içerir. İsteğe bağlı olarak S'nin yeni bir hattı olduğunu varsayabilirsiniz.
S kelimesi, yan uzunlukları 2*length(S)
boşluk (
), dikey çubuklar ( |
) ve yatay çubuklardan ( ―
) oluşan kare bir metin ızgarası olacaktır .
S kelimesini oluşturmak için, her sütunun S harfine karşılık gelen (normal soldan sağa okuma sırası) ve her satırın S harfine karşılık gelen (normal yukarıdan aşağıya okuma sırası ile) bir kare ızgara oluşturun. ).
Örneğin, eğer S food
bizim başlangıç ağımıza benziyor
food
f....
o....
o....
d....
.
sadece bir yer tutucu nerede .
.
Izgaradaki her boş nokta için (her biri ):
- Sütun mektup alfabetik sıralı harfinden önce gelirse, değiştirin
.
ile|
. - Sütun mektup alfabetik sıralı harfinden sonra gelirse, değiştirin
.
ile―
. - Sütun ve satır harfleri aynıysa, (boşluk)
.
ile değiştirin
İşte food
bu adımların her birinin arkasındaki örnek:
Ekleme
|
:food f...| o|..| o|..| d....
Ekleme
―
:food f.――| o|..| o|..| d―――.
Ekleme
food f ――| o| | o| | d―――
Wordenticon'u tamamlamak için gereksiz satırı ve kelimeleri içeren sütunu kaldırın.
――|
| |
| |
―――
sonra her şeyi yatay olarak yansıtın
――||――
| || |
| || |
――― ―――
ve sonunda tekrar dikey olarak yansıtır.
――||――
| || |
| || |
――― ―――
――― ―――
| || |
| || |
――||――
2*length(S)
final wordenticon olan yan uzunluktaki metin ızgarasıyla sonuçlanır.
Örnekler
İşte bazı wordenticon örnekleri. Farklı kelimelerin aynı kelimelere sahip olabileceğini ve bazı kelimelerin tamamen boşluklardan oluşabileceğini unutmayın (maalesef markdown bunları yapmak istemez).
food
――||――
| || |
| || |
――― ―――
――― ―――
| || |
| || |
――||――
mood
――||――
| || |
| || |
――― ―――
――― ―――
| || |
| || |
――||――
foof
―― ――
| || |
| || |
―― ――
―― ――
| || |
| || |
―― ――
fool
――――――
| || |
| || |
|―― ――|
|―― ――|
| || |
| || |
――――――
a [2*2 grid of spaces]
to
||
― ―
― ―
||
it
――
| |
| |
――
tt [4*4 grid of spaces]
abc
――――
| ―― |
|| ||
|| ||
| ―― |
――――
and
――――
| || |
|― ―|
|― ―|
| || |
――――
but
――――
| || |
|― ―|
|― ―|
| || |
――――
you
||||
― ―― ―
―| |―
―| |―
― ―― ―
||||
bob
― ―
| || |
― ―
― ―
| || |
― ―
cat
|――|
― ―― ―
|| ||
|| ||
― ―― ―
|――|
cart
|――――|
― ―――― ―
|| ―― ||
||| |||
||| |||
|| ―― ||
― ―――― ―
|――――|
todo
||||||
― | | ―
―― ―― ――
― | | ―
― | | ―
―― ―― ――
― | | ―
||||||
mice
||||||
― |||| ―
―― ―― ――
――| |――
――| |――
―― ―― ――
― |||| ―
||||||
zyxw
||||||
― |||| ―
―― || ――
――― ―――
――― ―――
―― || ――
― |||| ―
||||||
banana
|―|―||―|―|
― ― ― ― ― ―
|| | || | ||
― ― ― ― ― ―
|| | || | ||
― ― ― ― ― ―
― ― ― ― ― ―
|| | || | ||
― ― ― ― ― ―
|| | || | ||
― ― ― ― ― ―
|―|―||―|―|
codegolf
――――――――――――――
| ||| |||| ||| |
|― ―――――――――― ―|
|―| ―――――――― |―|
|―|| ――||―― ||―|
| ||| |||| ||| |
|―|||― || ―|||―|
|―||――― ―――||―|
|―||――― ―――||―|
|―|||― || ―|||―|
| ||| |||| ||| |
|―|| ――||―― ||―|
|―| ―――――――― |―|
|― ―――――――――― ―|
| ||| |||| ||| |
――――――――――――――
programming
―||―||||||||||||―||―
| || |||||||||||| || |
―― |―||||||||||||―| ――
――― ―|―――― ――――|― ―――
| || |||||||||||| || |
――――― ―――――――――― ―――――
―――|―| |―||―| |―|―――
―――|―| |―||―| |―|―――
―――|―|―― ―||― ――|―|―――
―――|―|||| || ||||―|―――
――― ―|―――― ――――|― ―――
――― ―|―――― ――――|― ―――
―――|―|||| || ||||―|―――
―――|―|―― ―||― ――|―|―――
―――|―| |―||―| |―|―――
―――|―| |―||―| |―|―――
――――― ―――――――――― ―――――
| || |||||||||||| || |
――― ―|―――― ――――|― ―――
―― |―||||||||||||―| ――
| || |||||||||||| || |
―||―||||||||||||―||―
abcdefghijklm
――――――――――――――――――――――――
| ―――――――――――――――――――――― |
|| ―――――――――――――――――――― ||
||| ―――――――――――――――――― |||
|||| ―――――――――――――――― ||||
||||| ―――――――――――――― |||||
|||||| ―――――――――――― ||||||
||||||| ―――――――――― |||||||
|||||||| ―――――――― ||||||||
||||||||| ―――――― |||||||||
|||||||||| ―――― ||||||||||
||||||||||| ―― |||||||||||
|||||||||||| ||||||||||||
|||||||||||| ||||||||||||
||||||||||| ―― |||||||||||
|||||||||| ―――― ||||||||||
||||||||| ―――――― |||||||||
|||||||| ―――――――― ||||||||
||||||| ―――――――――― |||||||
|||||| ―――――――――――― ||||||
||||| ―――――――――――――― |||||
|||| ―――――――――――――――― ||||
||| ―――――――――――――――――― |||
|| ―――――――――――――――――――― ||
| ―――――――――――――――――――――― |
――――――――――――――――――――――――
puanlama
Bu kod golf , bayt cinsinden en kısa kod kazanır. Tiebreaker önceki cevaba gider.
notlar
- Kodunuzdaki herhangi bir yatay çubuk (
―
) örneği, gerçekte aldığı 3 UTF-8 baytı yerine 1 bayt olarak sayılabilir. (On örneğe kadar.) - İsterseniz
-
yatay çubukların (―
) yerine düzenli çizgiler ( ) kullanabilirsiniz . - Bir wordenticon satırlarında iz bırakan boşlukların kaldırılması veya eklenmesi yasaktır (şekil değişmeden kalsa bile). Tam
2*length(S)
kenar uzunluğu metin karesi olmalıdır. - Çıktı wordenticon isteğe bağlı olarak tek bir izleyen yeni hatta olabilir.
programming
, and
ve codegolf
fakat unuttum puzzles
...