Noel Baba Evi
Not: Bu, belirlemeye çalıştığım ilk zorluk. Sandbox üzerinden geçti ancak bununla ilgili yanlış bir şey bulursanız, lütfen aşağıya inmeyin, onu geliştirebilmem için bir yorum bırakın.
Arka fon
Eski bir çocuk bulmacası, çatıyı bir kutu ve ortadan bir haç ile kaleminizi kağıttan kaldırmadan veya iki kez herhangi bir çizginin üzerinden geçmeden çizmektir.
Almanya'da "das Haus des Nikolaus" veya "Noel Baba'nın Evi" olarak bilinir. Dürüstçe dediğimiz şeyi hatırlayamıyorum. Bulmacayı bilmeyen herkes için tüm ayrıntıları burada bulabilirsiniz .
İşte evin ASCII sanat temsili.
/\
/__\
|\/|
|/\|
----
Meydan okuma
Noel Baba Evi'ni istediğiniz herhangi bir dilde çizmek için bir program veya işlev yazın.
Kulağa çok mu kolay geliyor? İşte yakalama. Ayrıca çizimin her aşamasını çıkarmalı ve bulmacanın kurallarına uymalıdır. Programınızın herhangi bir girdi alması gerekmez. Bitmiş ev tam olarak yukarıda gösterildiği gibi görünmelidir.
Yukarıdaki siteye göre 44 olası çözüm var. Bunlardan herhangi birini kullanabilirsiniz. Bu bir ASCII sanat mücadelesidir, bu nedenle çözümü hesaplamanız gerekmez, sadece çizmeniz gerekir.
Çıktı
44 çözümden birinden gerekli çıktıya bir örnek aşağıda gösterilmiştir:
----
\
\
----
__
\
\
----
\
__\
\
\
----
/\
/__\
\
\
----
/\
/__\
|\
| \
----
/\
/__\
|\/
|/\
----
/\
/__\
|\/|
|/\|
----
kurallar
- Gereksinimleri daha net hale getirmek için beklenen her çıktı arasına 1 ekstra yeni satır ekledim. Bu isteğe bağlıdır. Her çıkış arasında herhangi bir sayıda boş satıra izin verilir.
- Çıktınız, yukarıda gösterildiği gibi yalnızca /, \, -, _ ve boşluk karakterlerinden oluşmalıdır. Sondaki boşluklara izin verilir.
- Çiziminizdeki her satır bir önceki satırın sonundan devam etmelidir ve herhangi bir satırı tekrarlayamayabilirsiniz.
- Standart boşluklar yasaktır.
- Yukarıdaki linkte belirtilen kafiyeyi çıkarmanız gerekmez.
- Bu kod golf yani baytlar içinde en kısa cevap kazanan olacak.
Sonuç
Gönderen herkese bazı büyük cevaplar, teşekkürler ve saygılarımla. En düşük bayt sayısı dedim ama sadece bunun için değil, aynı zamanda kodun büyük açıklaması için de en iyi cevap olarak işaretledim. Güzel bir @Dennis.