From e2a0841824a536fccd56165d24941f2da419bceb Mon Sep 17 00:00:00 2001 From: Bill Ewanick Date: Mon, 27 Nov 2023 00:15:55 -0500 Subject: [PATCH] Bigger numbers, try parallel computation --- src/3n+1/Main.hs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/3n+1/Main.hs b/src/3n+1/Main.hs index fa64876..2e22911 100644 --- a/src/3n+1/Main.hs +++ b/src/3n+1/Main.hs @@ -3,11 +3,17 @@ The Simplest Math Problem No One Can Solve - Collatz Conjecture https://youtu.be/094y1Z2wpJg -} -import Control.Monad () -import Debug.Trace (trace) +import Control.Parallel.Strategies +import Data.Set (fromList) +import Debug.Trace (trace) main :: IO () -main = print $ take 100 $ map f [2^1000..] +main = print $ fromList $ take 300 $ parMap rpar f [2^100_000..] +-- main = print $ fromList $ take 300 $ map f [2^100_000..] + -- fromList [100001,717859] + +-- main = print $ fromList $ take 3 $ map f [2^310997..] +-- main = print $ f $ 2^310997 + 2 f :: Integer -> Integer f n = s 1 n