{"id":1422,"date":"2015-05-06T06:00:51","date_gmt":"2015-05-06T04:00:51","guid":{"rendered":"http:\/\/www.glc.us.es\/~jalonso\/exercitium\/?p=1422"},"modified":"2015-05-15T19:12:56","modified_gmt":"2015-05-15T17:12:56","slug":"minimo-y-maximo-de-un-monticulo","status":"publish","type":"post","link":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/minimo-y-maximo-de-un-monticulo\/","title":{"rendered":"M\u00ednimo y m\u00e1ximo de un mont\u00edculo"},"content":{"rendered":"<p>Definir la funci\u00f3n<\/p>\n<pre lang=\"text\">\n   minMax :: Ord a => Monticulo a -> Maybe (a,a)\n<\/pre>\n<p>tal que (minMax m) es justamente el par formado por el menor y el mayor elemento de m, si el mont\u00edculo m es no vac\u00edo. Por ejemplo,<\/p>\n<pre lang=\"text\">\n   minMax (foldr inserta vacio [4,8,2,1,5])  ==  Just (1,8)\n   minMax (foldr inserta vacio [4])          ==  Just (4,4)\n   minMax vacio                              ==  Nothing\n<\/pre>\n<p><em>Nota<\/em>: Este ejercicio debe realizarse usando \u00fanicamente las funciones de la librer\u00eda de mont\u00edculo (I1M.Monticulo) que se describe <a href=\"http:\/\/bit.ly\/1R9qlpV\">aqu\u00ed<\/a> y se encuentra <a href=\"http:\/\/bit.ly\/1AKmUQB\">aqu\u00ed<\/a>.<\/p>\n<h4>Soluciones<\/h4>\n<pre lang=\"haskell\">\nimport I1M.Monticulo   -- http:\/\/bit.ly\/1AKmUQB\n\nminMax :: Ord a => Monticulo a -> Maybe (a, a)\nminMax m | esVacio m = Nothing\n         | otherwise = Just (menor m,mayor m)\n\n-- (mayor m) es el mayor elemento del mont\u00edculo m. Por ejemplo,\n--     mayor (foldr inserta vacio [1,8,2,4,5])  ==  8\nmayor :: Ord a => Monticulo a -> a\nmayor m | esVacio r = menor m\n        | otherwise = mayor r\n        where r = resto m\n\n-- 2\u00aa definici\u00f3n de mayor \nmayor2 :: Ord a => Monticulo a -> a\nmayor2 m = last (monticulo2Lista m)\n\nmonticulo2Lista :: Ord a => Monticulo a -> [a]\nmonticulo2Lista m | esVacio m = []\n                  | otherwise = menor m : monticulo2Lista (resto m)\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Definir la funci\u00f3n minMax :: Ord a => Monticulo a -> Maybe (a,a) tal que (minMax m) es justamente el par formado por el menor y el mayor elemento de m, si el mont\u00edculo m es no vac\u00edo. Por ejemplo, minMax (foldr inserta vacio [4,8,2,1,5]) == Just (1,8) minMax (foldr inserta vacio [4]) == Just&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"footnotes":"","_jetpack_memberships_contains_paid_content":false},"categories":[5],"tags":[297,295],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/1422"}],"collection":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/comments?post=1422"}],"version-history":[{"count":3,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/1422\/revisions"}],"predecessor-version":[{"id":1461,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/1422\/revisions\/1461"}],"wp:attachment":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/media?parent=1422"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/categories?post=1422"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/tags?post=1422"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}