Görev
Üç dize verilen bir program veya işlev yazın A, B, C
, B
içinde her örneğinin A
tekrarlı olarak değiştirildiği bir çıktı dizesi oluşturur C
. Yinelemeli her adımda tüm çakışmayan örnekleri bir ikame tekrar aracı ikame B
olarak A
değiştirilir (soldan sağa iştahla seçilen) C
kadar B
daha fazla içerdiği A
.
Giriş çıkış
- G / Ç için varsayılan yöntemlerden birini kullanabilirsiniz .
- Dizeler yalnızca yazdırılabilir ASCII karakterleri içerecektir (ve bunlardan herhangi birini içerebilir ).
B
Asla boş bir dize olmayacak,A
veC
olabilir.- Dizeler düz metin olarak kabul edilir, örneğin
B
bir Regex kalıbı gibi davranamazsınız. - Bazı girdi kombinasyonları asla sona ermeyecektir. Programınız bu durumlarda her şeyi yapabilir.
Test durumları
Bunlar biçiminde: A/B/C\nOutput
Hello, world!/world!/PPCG
Hello, PPCG
Uppercase is up/up/down
Uppercase is down
ababababa/aba/ccc
cccbcccba
delete/e/{empty string}
dlt
{empty string}/no/effect
{empty string}
llllrrrr/lr/rl
rrrrllll
+-+-+-+/+-+/+
+
ababababa/aba/bada
badabbadbada
abaaba/aba/ab
abb
((())())())/()/{empty string}
)
Sonlanmayan örnekler:
grow/ow/oow
loop/lo/lo
downpercase is down
((())())())/()/