Bir dize olarak temsil edilen bir karakter bloğunu alan ve alfabedeki bitişik harflerin bağlı olduğu benzer bir dize çıkaran veya veren bir program veya işlev yazmalısınız.
Görsel bir örnek (şeklinde input => output
):
b d b d
|\ /|
| \ / |
=> | X |
| / \ |
e |/ \e
c a c a
ayrıntılar
- Giriş boşluk, satırsonu ve ilk
N
küçük harflerin her birinin tam olarak birini içeren bir dize olacaktır .1 <= N <= 26
- Giriş çizgileri, tam dikdörtgen bir blok oluşturan boşluklarla doldurulur.
- Alfabeye bitişik her harf çifti aynı satır, sütun ya da çapraz çizgi üzerinde olacak ve kullanılarak düz bir ascii çizgi ile bağlanmalıdır
\ / | or -
. (Çizginin uzunluğu 0 olabilir.) Aşağıdaki iki satırlı üst üste binme türleri kullanılmalıdır:
/ and \ become X | and - become + / and / become / \ and \ become \ | and | become | - and - become - [letter] and [anything] become [letter]
Başka hiçbir iki hatlı üst üste binme gerçekleşmez.
- İkiden fazla çizginin üst üste binmesi durumunda, bunların herhangi bir çiftinin geçerli örtüşmelerden biri olacağı garanti edilecektir. (örneğin
[letter] / |
üçlü asla gerçekleşmeyecek) - Değişen boşlukların yanı sıra
\ / | - X and +
girdi ve çıktı aynı olmalıdır. - İzleyen yeni satır isteğe bağlıdır ancak giriş ve çıkış için aynı olması gerekir.
- Bu kod golf yani en kısa giriş kazanır.
Örnekler
Giriş:
b d
h gi
e f
c a
Çıktı:
b d
|\ /|
| \ / |
| X h+--gi
| / \ | |
|/ \e--f
c a
Giriş:
dk j
b l
c fg
a m
i h
e
Çıktı:
dk----j
/|| /
b / |l /
|X | \/
c \ fg/\
\|/\ \
a \ m
/| \
i-+----h
e
Giriş:
eti sqjh k p u cfm vb owgzyx rnd la
Çıktı:
eti--sqjh-k--p--u--cfm-vb-owgzyx-rnd-la
Giriş:
a
Çıktı:
a
gerçekten güzel ascii sanat
—
Doktor
Hem X hem de + örtüşme aynı noktadaysa ne olur? Yoksa bu hesaba katmamız gereken bir durum değil mi?
—
theonlygusti
@ theonlygusti "Eğer ikiden fazla çizgi üst üste binerse, onlardan herhangi biri geçerli çakışmalardan biri olacaktır." Örneğin
—
randomra
/
ve -
geçersiz örtüşmeler X
ve +
( / \ - and |
) aynı konumda meydana gelemez.
Hala karıştı; neden bize bazı örnekler vermiyorsun?
—
theonlygusti
@ theonlygusti: Temel olarak, hesaba katmanız gereken bir durum değil
—
Claudiu