Questo è stato ispirato da una funzione che ho recentemente aggiunto alla mia lingua Add ++ . Pertanto invierò una breve risposta in Add ++ ma non accetterò se vince (non sarebbe giusto)
Non lo odi quando puoi moltiplicare i numeri ma non le stringhe? Quindi dovresti correggerlo, vero?
Devi scrivere una funzione o un programma completo che accetta due stringhe non vuote come input e produce la loro versione moltiplicata.
Come si moltiplicano le stringhe? Vi dirò!
Per moltiplicare due stringhe, prendi due stringhe e confronta ogni carattere. Il carattere con il punto di codice più alto viene quindi aggiunto all'output. Se sono uguali, aggiungi semplicemente il carattere all'output.
Non è garantito che le stringhe siano uguali in lunghezza. Se le lunghezze sono diverse, la lunghezza della stringa finale è la lunghezza della stringa più corta. L'input sarà sempre in minuscolo e può contenere qualsiasi carattere nell'intervallo ASCII stampabile ( 0x20 - 0x7E
), escluse le lettere maiuscole.
Puoi produrre in qualsiasi formato ragionevole, come stringa, elenco, ecc. Sii ragionevole, i numeri interi non sono un modo sensato di produrre in questa sfida.
Con gli input di hello,
e world!
, ecco come funziona
hello,
world!
w > h so "w" is added ("w")
o > e so "o" is added ("wo")
r > l so "r" is added ("wor")
l = l so "l" is added ("worl")
d < o so "o" is added ("worlo")
! < , so "," is added ("worlo,")
Quindi l'output finale per hello,
e world!
sarebbe worlo,
!
Altri casi di test
(senza passaggi)
input1
input2 => output
programming puzzles & code golf!?
not yet graduated, needs a rehaul => prtgyetmirgduuzzlesneedsde rolful
king
object => oing
blended
bold => boln
lab0ur win.
the "super bowl" => the0usuwir.
donald j.
trumfefe! => trumlefj.
Questo è un codice-golf quindi vince il codice più corto! Luok!