Thanks for everyone who commented on my solution for Euler 28 yesterday.
Euler 40 is a bit easier, even more so I'm disappointed with the performance of 
my solution:(defn euler-40 [n-max] 

(reduce #(* (Integer/valueOf (str %1)) (Integer/valueOf (str %2)))
        (let [r (range (inc n-max))]
                (for [n (iterate #(* % 10) 1) :while (< n n-max)] (nth (apply 
str r) n)))))

It takes about 4s to find the solution.

First of all, I guess the whole Integer/valueOf ceremony doesn't affect 
performance but could probably be dealt with in a more idiomatic way.
Other than that, how could I optimise the presented solution. Hints to other 
solutions (as long as they're pretty ;)) are also welcome :)

Thanks again
Andreas

--
"Programs must be written for people to read, and only incidentally for 
machines to execute."
- Abelson & Sussman, SICP
-- 
**********************************************************
Andreas Koestler, Software Engineer
Leica Geosystems Pty Ltd
270 Gladstone Road, Dutton Park QLD 4102
Main: +61 7 3891 9772     Direct: +61 7 3117 8808
Fax: +61 7 3891 9336
Email: andreas.koest...@leica-geosystems.com

************www.leica-geosystems.com*************

when it has to be right, Leica Geosystems

Please  consider the environment before printing this email.





-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to