Bu zorluk için, bir ASCII sanat yorganı, karakterleri =-<>/\
yatay ve dikey olarak simetrik olan bir yorgan benzeri düzende içeren, 24 karakter genişliğinde ve 18 satır uzunluğunda bir metin bloğu olacaktır .
Örnek yorgan:
========================
------------------------
//\\//\\\//\/\\///\\//\\
<<><<>>>>><<>><<<<<>><>>
/\\/\\\\/\/\/\/\////\//\
------------------------
/\/////\\///\\\//\\\\\/\
\///\/\/\\\\////\/\/\\\/
\///\/\/\\\\////\/\/\\\/
/\\\/\/\////\\\\/\/\///\
/\\\/\/\////\\\\/\/\///\
\/\\\\\//\\\///\\/////\/
------------------------
\//\////\/\/\/\/\\\\/\\/
<<><<>>>>><<>><<<<<>><>>
\\//\\///\\/\//\\\//\\//
------------------------
========================
Tüm yorganlar aynı biçimdedir:
- Her zaman 24'e 18.
- Üst satır (satır 1) ve alt satır (satır 18)
=
tüm yol boyunca. - 2, 6, 13 ve 17 numaralı hatlar
-
tüm yol boyunca. - Satır 4 ve 15, aynı rastgele yatay olarak simetrik paterndir
<
ve>
. - Diğer tüm hatları (3, 5, 7, 8, 9, 10, 11, 12, 14, 16) ile doldurulur
/
ve\
bütün yorgan kalacak şekilde tamamen rasgele bir şekilde , yatay ve dikey simetrik .
Yorganı katlarken, yarı dikey, dikey veya yatay olarak, karakterlerin şekillerinin tam olarak eşleştiğine dikkat edin. Bunu, karakterlerin kendileri ile eşleştirmesiyle karıştırmayın. örneğin, çizgi 3 ve çizgi 16 aynı değildir , dikey ayna görüntüleridir.
Meydan okuma
Rasgele bir ASCII art yorganını basacak veya döndürecek bir program veya işlev yazın.
Çok sayıda kodlanmış satır ve simetri nedeniyle, tek gerçek rasgelelik, 3, 4, 5, 7, 8, 9 satırlarındaki ilk 12 karakterden gelir:
- 4. satırdaki ilk 12 karakter, karakterlerden herhangi bir uzunlukta 12 karakterden oluşmalı
<
ve>
. - 3, 5, 7, 8, 9 satırlarındaki ilk 12 karakter, karakterlerin herhangi bir uzunluğu 12 karakterden oluşmalı
/
ve\
(birbirinden bağımsız) olmalıdır. - Bu rasgele dizeler daha sonra tüm yorganın yapılması için buna göre yansıtılır.
Bayt cinsinden en kısa cevap kazanır. Tiebreaker daha önce yayınlandı.
Sahte ve sayı üreteçlerini kullanabilirsiniz. (Hayır, 12 karakterli dizenin tamamının<>
veya /\
sizin dilinizin PRNG'si ile oluşturulabileceğini kanıtlamanıza gerek yoktur .)
Çıktı isteğe bağlı olarak takip eden bir yeni satır içerebilir, ancak yorgan için gerekli olanın dışında takip eden boşluk veya başka karakterler yoktur.