Un màxim local d’una lista és un element de la llista que és major que el seu predecessor i que el seu successor en la llista.
Implementa una funció ITERATIVA que, donada un llista d’enters, torna una altra llista amb els màxims locals de la llista donada.
La capçalera de la funció és la següent:
Per exemple:
maxims_locals_llista([3, 2, 5, 3, 7, 7, 1, 6, 2]) = [5, 6]
5 és un màxim local ja que és major que 2 (el seu predecessor) i que 3 (el seu successor). 6 també és un màxim local ja que és major que 1 (el seu predecessor) i que 2 (el seu successor).
Observació Només cal enviar el procediment demanat; el programa principal serà ignorat.
Observació
La funció i subfuncions que creïs han de treballar només amb llistes (la classe list
de la biblioteca STL). Heu de trobar una solució ITERATIVA i eficient del problema. En particular, no hi hauria d’haver cap crida recursiva en cap de les funcions que implementis. Si crees funcions auxiliars, afegeix-hi les corresponents Pre i Post. En els bucles inclou l’invariant del bucle.
Input/Output