Subllistes creixents ==================== .. py:module:: creixents .. warning:: Per a resoldre aquest exercici **no es poden fer servir iteracions (ni** ``for`` **ni** ``while`` **)**, només funcions recursives. Funció divideix_creixents (2 punts) ----------------------------------- Utilitzant la recursivitat, dissenyeu la funció següent i deseu-la al mòdul :py:mod:`creixents` (fitxer :file:`creixents.py`), la qual divideix una llista de nombres en subllistes creixents: .. py:function:: divideix_creixents(L) :param list L: llista no buida de nombres :return: descomposició de `L` en subllistes estrictament creixents :rtype: llista de subllistes de nombres Formalment, essent la llista retornada :math:`[l_0, l_1, \dots , l_n]`, es compleix que: 1. :math:`l_0 + l_1 + \dots + l_n = L`, és a dir, la concatenació de les subllistes coincideix amb `L`. 2. :math:`l_i[k-1] < l_i[k] \, , \, \forall k = 1 \dots len(l_i)-1 \, , \, \forall i = 0 \dots n`, és a dir, els elements de cada subllista estan ordenats creixentment. 3. :math:`l_i[-1] \geq l_{i+1}[0] \, , \, \forall i = 0 \dots n-1`, és a dir, es divideix en el menor nombre de subllistes creixents possible. Per exemple, .. literalinclude:: tests-creixents.txt :language: python :end-before: --fi-enunciat Disposeu de més jocs de prova en el fitxer :download:`tests-creixents.txt`.