Aslen Malvina Reynolds tarafından, sözleri olan banliyö yayılımı hakkında Little Boxes adında hicivli bir şarkı var:
Yamaca Küçük kutuları,
ticky-yapışkan yapılmış küçük kutular,
yamaca Küçük kutuları,
küçük kutular hepsi aynı.
Yeşil ve pembe
olan var, mavi ve sarı olan var,
hepsi yapışkan yapışkan.
Ve hepsi aynı görünüyor.
Buradaki işiniz n>1
, evin boyutunu temsil eden bir tamsayı girdisi verildiğinde , aşağıdaki renkleri (0xRRGGBB notasyonunda) kullanarak dört "küçük kutuyu" çıktılar:
Green -- 0x00FF00
Pink --- 0xFF00FF (technically magenta)
Blue --- 0x0000FF
Yellow - 0xFFFF00
Konsolunuzda tam olarak bu renkler yoksa, mümkün olan en yakın rengi kullanabilirsiniz (örn. ANSI çıkış kodları).
Evler n
_
zemini ve çatıyı temsil edecek şekilde inşa edilmiştir . Duvarları temsil eden n/2
(yuvarlatılmış) |
karakterlerle çevrilidir . Çatılar her zaman 2
yüksektir ve /
sol kenarda iki \
, sağ kenarda iki ve n-2
-
çatı tepe noktasını temsil eder. Evler büyüdükçe, çatının karşılaştırmalı boyutu küçülür; bu amaçlanmıştır.
İşte büyüklükte bir ev 2
:
/\
/__\
|__|
İşte boyutu 3
:
/-\
/___\
| |
|___|
İşte boyutu 7
:
/-----\
/_______\
| |
| |
| |
|_______|
Böylece , birincisi yeşil, ikincisi pembe (macenta), üçüncüsü mavi, dördüncüsü sarı olmak üzere, yukarıda açıklandığı gibi 7
dört evden bir girdi verilir 7
. Renklerin bu sırayla çıktıları önemlidir.
Boyut örnek resim 3
:
kurallar
- Evler, aralarında net bir ayrım olduğu sürece yatay veya dikey olabilir.
- Önde gelen / sondaki yeni satırlar veya diğer boşluklar, evlerin uygun şekilde hizalanması koşuluyla isteğe bağlıdır.
- Tam bir program veya bir işlev kabul edilebilir. Bir işlev varsa, çıktıyı yazdırmak yerine döndürebilirsiniz.
- Çıktı konsola olabilir, görüntü olarak kaydedilebilir vb.
- Standart boşluklar yasaktır.
- Bu kod golfüdür, bu nedenle her zamanki golf kuralları geçerlidir ve en kısa kod (bayt cinsinden) kazanır.