Message Coder X13025


Statement
 

pdf   zip

Una codificación de un mensaje no vacío ss dado es un diccionario cscs que, por cada símbolo de ss, contiene una lista ordenada de las posiciones de ss donde el símbolo aparece.

Implemente la función @coder(s)@ que, dado el mensaje ss, devuelva un diccionario cuyas claves sean los símbolos únicos de ss y cuyos valores sean listas ordenadas con las posiciones donde aparece cada símbolo en ss.

Ejemplo de sessión

Sample session
>>> d_salida = {'m': [0], 'i': [1, 14, 16], 's': [2, 3], 'a': [4, 18], 't': [5],
... 'g': [6], 'e': [7, 9], 'p': [8], 'r': [10, 19], 'c': [11, 17], 'o': [12],
... 'd': [13], 'f': [15]}
>>> if d_salida != coder("missatgepercodificar"): print(d_salida)
>>> d_salida = {'h': [0, 4, 8], 'o': [1, 5, 9], 'l': [2, 6, 10], 'a': [3, 7, 11]}
>>> if d_salida != coder("holaholahola"): print(d_salida)
>>> d_salida = {'k': [0, 1, 2]}
>>> if d_salida != coder("kkk"): print(d_salida)
>>> d_salida = {'a': [0, 2, 4, 10, 13, 15, 19], 'x': [1, 6, 9, 16], 's': [3], 'z': [5],
... 'i': [7], 'n': [8, 11], 'c': [12, 14], 't': [17], 'l': [18]}
>>> if d_salida != coder("axasazxinxancacaxtla"): print(d_salida)
>>> d_salida = {'f': [0], 'e': [1, 18], 'l': [2], 'i': [3, 8], 'z': [4], 'n': [5 ],
... 'a': [6, 10], 'v': [7], 'd': [9, 11], 'y': [12], 'p': [13, 17], 'r': [14, 19],
... 'o': [15, 20], 's': [16], '2': [21], '0': [22], '1': [23], '8': [24]}
>>> if d_salida != coder("feliznavidadyprospero2018"): print(d_salida)
Information
Author
Professors Informàtica EEBE
Language
Spanish
Translator
Professors Informàtica EEBE
Original language
English
Other languages
Catalan English
Official solutions
Python
User solutions
Python