Це надихнуло функцію, яку я нещодавно додав до своєї мови Add ++ . Тому я надішлю коротку відповідь у Add ++, але я не прийму її, якщо вона переможе (це було б не справедливо)
Хіба ви не ненавидите це, коли ви можете перемножувати числа, але не рядки? Тож вам слід це виправити, правда?
Ви повинні написати функцію або повну програму, яка приймає два непусті рядки як вхід і виводить їх перемножену версію.
Як ви множите рядки? Я тобі скажу!
Щоб помножити два рядки, ви берете два рядки і порівнюєте кожен символ. Символ з найвищою точкою коду додається до виводу. Якщо вони рівні, просто додайте символ до виводу.
Строки не гарантуються рівними по довжині. Якщо довжини різні, то довжина остаточного рядка - це довжина найкоротшої струни. Вхід завжди буде малим і може містити будь-який символ у діапазоні ASCII для друку ( 0x20 - 0x7E
), виключаючи великі літери.
Ви можете виводити в будь-якому розумному форматі, такому як рядок, список і т.д.
З введеннями hello,
та world!
, ось як це працює
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,")
Тож кінцевий вихід для hello,
та world!
був би worlo,
!
Більше тестових випадків
(без кроків)
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.
Це код-гольф, тому найкоротший виграш коду! Луок!