Feu una funció separa(s,lst) que,
donada una instància de la classe Llista
lst (que conté només nombres enters) i un
enter, que farà el paper de separador, s,
retorni una nova instància de la classe
Llista, amb els mateixos elements que
lst (i en el mateix ordre), on s’hagi
inserit l’element separador entre cada dos elements consecutius
iguals de la llista.
Aquí teniu uns quants exemples d’ús de la funció:
>>> from code import *
>>>
>>>
>>> print(separa(9999,Llista().inserir(1).inserir(1)))
1 -- 9999 -- 1
>>>
>>>
>>> print(separa(9999,Llista().inserir(1).inserir(1).inserir(1)))
1 -- 9999 -- 1 -- 9999 -- 1
>>>
>>>
>>> l = Llista().inserir(1).inserir(1).inserir(1)
>>> l2 = separa(9999,l)
>>> print(l)
1 -- 1 -- 1
>>> print(l2)
1 -- 9999 -- 1 -- 9999 -- 1
>>>
>>>
>>> print(separa(9999,Llista().inserir(20).inserir(20).inserir(4).inserir(5)))
20 -- 9999 -- 20 -- 4 -- 5
>>>
>>>
>>> print(separa(9999,Llista().inserir(20).inserir(21).inserir(8).inserir(8)))
20 -- 21 -- 8 -- 9999 -- 8
>>>
>>>
>>> print(separa(9999,Llista().inserir(2).inserir(3)))
2 -- 3
>>>
>>>
>>> l = Llista().inserir(1)
>>> l2 = separa(9999,l)
>>> print(l)
1
>>> print(l2)
1
>>> l2 is not l
True
>>>
>>>
>>> print(separa(9999,Llista().inserir(5).inserir(6).inserir(6).inserir(1).inserir(9).inserir(9).inserir(9).inserir(11)))
5 -- 6 -- 9999 -- 6 -- 1 -- 9 -- 9999 -- 9 -- 9999 -- 9 -- 11
>>>
Entrada
L’entrada és un nombre n i una llista d’n
nombres enters. Finalment hi ha un nombre enter que farà el paper de
separador.
Vegeu els exemples del joc de proves públic.
Sortida
La sortida serà la (representació textual de la) llista resultat de cridar la funció.
Vegeu els exemples del joc de proves públic.
Observacions
Heu de baixar-vos el fitxer code.py
(icona de la serp). Aquest fitxer és un programa amb
tot el que cal per executar els jocs de prova públics.
Només falta, clar, que afegiu la funció que demana l’enunciat. Aquest
fitxer l’heu de completar amb el vostre codi, i això,
tot, és el que heu d’enviar al Jutge com a solució.
L’eficiència i la qualitat de la solució es tindran en compte a la correcció manual.
Input
2 1 1 1010
Output
1 -- 1010 -- 1
Input
3 1 1 1 1010
Output
1 -- 1010 -- 1 -- 1010 -- 1
Input
4 20 20 4 5 1010
Output
20 -- 1010 -- 20 -- 4 -- 5
Input
4 20 21 8 8 1010
Output
20 -- 21 -- 8 -- 1010 -- 8
Input
2 2 3 1010
Output
2 -- 3
Input
1 1 1010
Output
1
Input
8 5 6 6 1 9 9 9 11 1010
Output
5 -- 6 -- 1010 -- 6 -- 1 -- 9 -- 1010 -- 9 -- 1010 -- 9 -- 11
Input
0 1010
Output