İşte 4 yollu bir kavşağın ASCII sanatı:
| | |
| |
| | |
| |
| | |
-----+-----+-----
| |
- - -| |- - -
| |
-----+-----+-----
| | |
| |
| | |
| |
| | |
(Yatay yolların 3 satır yüksekliğinde, dikey yollar 5 sütun genişliğinde olduğunu unutmayın. Bu, dikdörtgen yazı tipinden dolayı estetik nedenlerden dolayıdır.)
Buradaki zorluk bu ASCII sanatını üretmektir. Ancak, hepinizin bildiğinden emin olduğum gibi, her kavşağın her yöne giden bir yolu yoktur. Bu belirli kavşak gider NESW
, ancak bazı kavşaklar gidebilir, örneğin NW
:
| | |
| |
| | |
| |
| | |
-----+-----+
| |
- - -| |
| |
-----+-----+
Ya da gidebilir SWE
:
-----+-----+-----
| |
- - -| |- - -
| |
-----+-----+-----
| | |
| |
| | |
| |
| | |
Ya da E
sadece tek bir yöne bile gidebilir (buna bir kesişme bile diyemezsiniz , ancak aşırı bilgiçlik yapmaktan kaçının).
+-----+-----
| |
| |- - -
| |
+-----+-----
Bu kombinasyonlardan herhangi birini kolayca oluşturabilecek bir program veya fonksiyon yazmanız gerekir . Daha spesifik olarak, zorluğunuz, NESW
girişten ibaret olan ve bu kesişme yolundaki bu kesişme sanatını çıkaran ya da veren, bir yol tarifi alan bir program ya da işlev yazmaktır . Bu talimatlar herhangi bir sırada görünebilir, ancak giriş olmayacak dışında karakterler içeriyor N
, E
, S
, veya W
. İsterseniz, bunun yerine girdilerin küçük harf olmasını isteyebilirsiniz, ancak bunu cevabınızda belirtmelisiniz. Tüm girişlerin en az bir yön içereceğini de varsayabilirsiniz.
Son örnekte her satırda öncü boşluklar vardı, çünkü batıya giden yol yok. Batıya giden bir yolunuz yoksa, bu önde gelen alanlar isteğe bağlıdır. Bu:
+-----+-----
| |
| |- - -
| |
+-----+-----
Ayrıca kabul edilebilir bir çıktı olurdu. Benzer şekilde, gitmiş N
veya S
gitmişse, oradaki boş çizgiler isteğe bağlıdır. Bir izleyen yeni hatta izin verilir ve çıktı görsel olarak aynı olduğu sürece izlenen boşluklara izin verilir .
Giriş ve çıkışları, STDIN / STDOUT, komut satırı argümanları, dosyalar, fonksiyon argümanları / dönüş değerleri vb. Gibi herhangi bir makul formatta alabilirsiniz.
Her zaman olduğu gibi, bu kod golf , bu yüzden hangi dilde kullanıyorsanız kullanın, mümkün olan en kısa sürede cevap almayı deneyin!
Örnek io:
NESW:
| | |
| |
| | |
| |
| | |
-----+-----+-----
| |
- - -| |- - -
| |
-----+-----+-----
| | |
| |
| | |
| |
| | |
NS:
| | |
| |
| | |
| |
| | |
+-----+
| |
| |
| |
+-----+
| | |
| |
| | |
| |
| | |
S:
+-----+
| |
| |
| |
+-----+
| | |
| |
| | |
| |
| | |
EW:
-----+-----+-----
| |
- - -| |- - -
| |
-----+-----+-----
SE:
+-----+-----
| |
| |- - -
| |
+-----+-----
| | |
| |
| | |
| |
| | |
E
örneğin, yoksa )? HayırN
ya da yoksa boş satırlara öncülük etme ve takip etme izni varS
mı?