{"id":3660,"date":"2018-01-24T06:00:51","date_gmt":"2018-01-24T04:00:51","guid":{"rendered":"http:\/\/www.glc.us.es\/~jalonso\/exercitium\/?p=3660"},"modified":"2018-01-31T08:40:33","modified_gmt":"2018-01-31T06:40:33","slug":"sucesion-de-digitos-0-y-1-alternados","status":"publish","type":"post","link":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/sucesion-de-digitos-0-y-1-alternados\/","title":{"rendered":"Sucesi\u00f3n de d\u00edgitos 0 y 1 alternados"},"content":{"rendered":"<p>Los primeros t\u00e9rminos de la sucesi\u00f3n de los d\u00edgitos 0 y 1 alternados son<\/p>\n<pre lang=\"text\">\n   0\n   1\n   10\n   101\n   1010\n   10101\n   101010\n   1010101\n   10101010\n   101010101\n<\/pre>\n<p>Definir la lista<\/p>\n<pre lang=\"text\">\n   sucAlternada :: [Integer]\n<\/pre>\n<p>tal que sus elementos son los t\u00e9rminos de la sucesi\u00f3n de los d\u00edgitos 0 y 1 alternados. Por ejemplo,<\/p>\n<pre lang=\"text\">\n   \u03bb> take 10 sucAlternada\n   [0,1,10,101,1010,10101,101010,1010101,10101010,101010101]\n   \u03bb> length (show (sucAlternada !! (2*10^6)))\n   2000000\n<\/pre>\n<h4>Soluciones<\/h4>\n<pre lang=\"haskell\">\nimport Data.List (inits, unfoldr)\n\n-- 1\u00aa soluci\u00f3n\n-- ===========\n\nsucAlternada :: [Integer]\nsucAlternada = [read (take x aux) | x <- [1..]]\n  where aux = '0' : '1' : aux\n\n-- 2\u00aa soluci\u00f3n\n-- ===========\n\nsucAlternada2 :: [Integer]\nsucAlternada2 =\n  [read (take n (cycle \"01\")) | n <- [1..]]\n\n-- 3\u00aa soluci\u00f3n\n-- ===========\n\nsucAlternada3 :: [Integer]\nsucAlternada3 = 0 : [siguiente n | n <- sucAlternada3]\n\nsiguiente :: Integer -> Integer\nsiguiente x | even x    = 10*x + 1\n            | otherwise = 10*x\n\n-- 3\u00aa soluci\u00f3n\n-- ===========\n\nsucAlternada4 :: [Integer]\nsucAlternada4 = 0 : map siguiente sucAlternada4\n\n-- 5\u00aa soluci\u00f3n\n-- ===========\n\nsucAlternada5 :: [Integer]\nsucAlternada5 = map read ((tail . inits . concat . repeat) \"01\")\n\n-- 6\u00aa soluci\u00f3n\n-- ===========\n\nsucAlternada6 :: [Integer]\nsucAlternada6 = [(10 * 10^n - 1) `div` 99 | n <- [0..]]\n \n-- 7\u00aa soluci\u00f3n\n-- ===========\n\nsucAlternada7 :: [Integer]\nsucAlternada7 =\n  unfoldr (\\x -> if x `mod` 10 == 0\n                 then Just (x,10 * x + 1)\n                 else Just (x,10 * x))\n          0\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Los primeros t\u00e9rminos de la sucesi\u00f3n de los d\u00edgitos 0 y 1 alternados son 0 1 10 101 1010 10101 101010 1010101 10101010 101010101 Definir la lista sucAlternada :: [Integer] tal que sus elementos son los t\u00e9rminos de la sucesi\u00f3n de los d\u00edgitos 0 y 1 alternados. Por ejemplo, \u03bb> take 10 sucAlternada [0,1,10,101,1010,10101,101010,1010101,10101010,101010101] \u03bb>&#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":[8,166,415,95,47],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/3660"}],"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=3660"}],"version-history":[{"count":6,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/3660\/revisions"}],"predecessor-version":[{"id":3692,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/posts\/3660\/revisions\/3692"}],"wp:attachment":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/media?parent=3660"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/categories?post=3660"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/wp-json\/wp\/v2\/tags?post=3660"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}