Meydan okuma:
Giriş:
İki giriş alırsınız:
- Yalnızca yazdırılabilir ASCII içeren bir dize (boşluklar, sekmeler veya yeni satırlar hariç)
- Yazdırılabilir bir ASCII karakteri
Çıktı:
İlk satır, dize girişini içerecektir. Her i
-modulo-3 bu karakterin ilk oluşumunda Güney-Doğu yönünde hareket eder; her i
-modulo-3 saniyelik bir oluşum Güney yönünde hareket eder; ve her i
-modulo-3 üçüncü olay, Güney-Batı yönünde hareket edecektir. Karakterler tekrar başlangıçtaki başlangıç pozisyonuna gelinceye kadar devam edersiniz (yani, gerekirse bir taraftan diğer tarafa dolanacaktır) ve sonra dize girişiyle son satırı tekrar yazdıracaksınız. bitir şunu. (Tüm test durumlarının length(input)
, takip girişini içeren satır da dahil olmak üzere çoğu satırdan sonra ilk girişlerinde sona ereceğine dikkat edin . Aşağıdaki ilk test durumunda da görüldüğü gibi, ancak uzunluğu 14 olan ancak daha erken olabilir. 9.)
Bunların hepsi oldukça belirsiz olabilir, bu yüzden burada bir örnek:
Test durumu 1:
String girişi: "This_is_a_test"
Karakter girişi:'s'
Çıktı:
This_is_a_test
s s s
ss s
s s
sss
sss
s s
ss s
s s s
This_is_a_test
İşte üçün renkli yolları ile aynı test durumu s
:
ilki 's'
, güneydoğu yönünde yeşil yolu izler; ikincisi 's'
sarı yolu Güney yönünde izler; Üçüncüsü 's'
de açık mavi yolu Güneybatı yönünde takip ediyor. (Eğer dördüncü bir 's'
şey olacaksa, aşağıdaki diğer test vakalarının bazılarında görülebilecek bir şekilde tekrar Güneydoğu yönünde ilerleyecektir.)
Meydan okuma kuralları:
- Girişler yalnızca yazdırılabilir ASCII içerecektir (boşluklar, sekmeler ve yeni satırlar hariç)
- G / Ç formatları esnektir. Yeni bir satır ayrılmış dize, karakter matrisi vb. Olabilir. Aramanız.
- Belirtilen karakterin dizgede bulunmaması mümkündür; bu durumda giriş dizgisini bir veya iki kez çıktılamanıza izin verilir (yani
"test", 'a'
, bunlardan herhangi birini mümkün çıktı olarak alabilir:"test\ntest"
/"test"
). - Ana boşluklar zorunludur; arka boşluklar isteğe bağlıdır. Bir veya daha fazla satır başı / sondaki yeni satırlara izin verilir.
Genel kurallar:
- Bu kod golf , bayt cinsinden en kısa cevap kazanır.
Code-golf dillerinin, codegolfing olmayan dillerle cevap göndermekten vazgeçmesine izin vermeyin. Herhangi bir programlama dili için mümkün olduğunca kısa bir cevap bulmaya çalışın. - Cevabınız için standart kurallar geçerlidir , bu nedenle STDIN / STDOUT fonksiyonlarını, uygun parametrelerle fonksiyonlarını ve geri dönüş tipini, tam programları kullanmanıza izin verilir. Senin çağrı.
- Varsayılan Loopholes yasaktır.
- Mümkünse, lütfen kodunuz için test içeren bir bağlantı ekleyin.
- Ayrıca, lütfen gerekirse bir açıklama ekleyin.
Test durumları / daha fazla örnek:
Test durumu 2:
String girişi: "abcabcabcabcabc"
Karakter girişi:'b'
Çıktı:
abcabcabcabcabc
b b b b b
bbb bb
b b
bbb bb
b b b b b
b b b b
b b b b b
bb b bb
b b b
bb bbb
b b bbb
b b b b
b bb bb
b b bb b
abcabcabcabcabc
İşte beşin renkli yolları ile aynı test durumu a
:
Test durumu 3:
String girişi: "only_two_paths?"
Karakter girişi:'o'
Çıktı:
only_two_paths?
o o
o o
o o
o o
o o
oo
o
oo
o o
o o
o o
o o
o o
o o
only_two_paths?
İşte iki renkli yol ile aynı test durumu o
:
Test durumu 4:
String girişi: "lollollollollol"
Karakter girişi:'l'
Çıktı:
lollollollollol
lll ll ll
ll ll ll
l ll ll ll ll
lll l ll l ll
llllll ll ll
l l ll ll
ll lll ll
l l l lll ll l
ll l ll l l
l l l l llll l
ll lll lll
l l l ll
ll lll lllll
l l l ll l ll
lollollollollol
İşte on renkli yolları ile aynı test örneği l
:
Test durumu 5:
String girişi: "AbCdEeDcBaAbCdEeDcBa_CCCCC"
Karakter girişi:'C'
Çıktı:
AbCdEeDcBaAbCdEeDcBa_CCCCC
C C C C C
C C C C CCC
C C C C C C C
C C C C C C C
C C C C C C C
C C C C C C C
C C C C C C C
C C C CC C C
C C CC C C
C C CC C C
C C CC C
CC CC C C
CC CC C C
C C CC C C
C C CC C C C
C C C C C C
C C CC C C C
C C C C C C C
C C C C C C C
C C C C C CC
C C C C C C
C C C C CCC
C C C CCCC
C C C C
C C CCCCC
AbCdEeDcBaAbCdEeDcBa_CCCCC
İşte yedi renkli yol ile aynı test durumu C
:
Test durumu 6:
String girişi: "XyX"
Karakter girişi:'X'
Çıktı:
XyX
XX
X
XyX
İşte iki renkli yol ile aynı test durumu X
:
Test durumu 7:
String girişi: "aaaa"
Karakter girişi:'a'
Çıktı:
aaaa
aa
aaa
aaa
aaaa
İşte dört renkli yollar ile aynı test durumu a
:
length(input)
şeyin her şeyin yeniden eşleştiği, ancak ilk test durumunun kanıtladığı kadar erken olabilir. Fakat% 100 emin olmasam da gerçekten de 3 bölümün katları hakkında haklısınız.