Euler: Problem 99

Posted by YpsilonTAKAI On 2013年6月9日日曜日 0 コメント
99番目の問題です。
ここに来て、問題ごとの難易度の差が激しいですね。

この問題はとても簡単。
思いつきでだーーっと書いたコードなので、あまりきれいではないのですが、直すまでも無いので、このままにしときます。

今回も内容についてのコメントは無し。

;; Problem 99
;; "Elapsed time: 22.476254 msecs"
(require '[clojure.java.io :as io])
(defn pe99 []
(with-open [rdr (io/reader "http://projecteuler.net/project/base_exp.txt")]
(reduce
(fn [[lnum maxlog] [st count]]
(let [[base exp] (map #(Integer/parseInt %) (clojure.string/split st #","))
logval (* exp (Math/log base))]
(if (> logval maxlog)
[count logval]
[lnum maxlog])) )
[0 0]
(map list (line-seq rdr) (iterate inc 1)))))
view raw pe_99.clj hosted with ❤ by GitHub



0 コメント:

コメントを投稿