Max non overlap zip X34729


Statement
 

pdf   zip

html

Un zip (o cremallera) de dos strings es un nuevo string que se forma tomando un elemento de cada string alternativamente. Diseñad una función max_non_overlap_zip(s,t) que, dados dos strings s y t, devuelva el zip de sus prefijos más largos en los que en cada posición los caracteres respectivos de s y t difieran.

Por ejemplo, la primera posición en la que los strings ’abxcbdz’ y ’cdhcu’ coinciden es la tercera (comenzando por cero). Así pues, con estos dos strings como argumentos tenemos que hacer el zip de los prefijos respectivos ’abx’ y ’cdh’. El resultado será el string formado tomando alternativamente una letra de cada prefijo: ’acbdxh’. En el caso de que los strings no coincidan en ninguna posición se ha de retonar el zip de los prefijos completos.

Sample session
>>> max_non_overlap_zip("abcbdz", "baccu")
'abba'
>>> max_non_overlap_zip("abcbdz", "abccu")
''
>>> max_non_overlap_zip("abcbdz", "bccu")
'abbc'
>>> max_non_overlap_zip("abxcbdz", "cdhcu")
'acbdxh'
Information
Author
InfBesos
Language
Spanish
Official solutions
Python
User solutions
Python