Posiciones de máximos locales

Los vectores se definen usando tablas como sigue:

Un elemento de un vector es un máximo local si no tiene ningún elemento adyacente mayor o igual que él.

Definir la función

tal que (posMaxVec p) devuelve las posiciones del vector p en las que p tiene un máximo local. Por ejemplo,

Soluciones

7 Comentarios

    1. Para el tercer ejercicio no me funciona esa solución, creo que habría que añadirle esto:

      import Data.Array

      type Vector a = Array Int a

      posMaxVec :: Ord a => Vector a -> [Int]
      posMaxVec p | snd ( bounds p) == 1 = [1]
      |otherwise =filter q (indices p)
      –El resto exactamente igual a lo tuyo.

Escribe tu solución