Skip to content

Commit

Permalink
Problem 8
Browse files Browse the repository at this point in the history
  • Loading branch information
dfuenzalida committed Jul 27, 2019
1 parent 7ee574e commit a8b661a
Show file tree
Hide file tree
Showing 3 changed files with 54 additions and 4 deletions.
6 changes: 2 additions & 4 deletions deps.edn
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,8 @@
binaryage/oops {:mvn/version "0.6.4"}}
:aliases
{:test {:extra-paths ["test"]
:extra-deps {org.clojure/clojure {:mvn/version "1.10.0-RC5"}
;; org.clojure/clojurescript {:mvn/version "1.10.439"}
org.clojure/clojurescript {:git/url "https://github.com/clojure/clojurescript"
:sha "d6f8896452b531a273f99f2716aaa08f09600063"}
:extra-deps {org.clojure/clojure {:mvn/version "1.10.1"}
org.clojure/clojurescript {:mvn/version "1.10.520"}
org.clojure/test.check {:mvn/version "RELEASE"}
;;org.clojure/spec.alpha {:local/root "/Users/Borkdude/git/spec.alpha"}
chivorcam {:mvn/version "1.0.0"}
Expand Down
4 changes: 4 additions & 0 deletions src/euler/p008/data.cljc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
(ns euler.p008.data)

(def answer 23514624000)

48 changes: 48 additions & 0 deletions src/euler/p008/dfuenzalida.cljc
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
(ns euler.p008.dfuenzalida
(:refer-clojure :exclude [read-string format])
(:require
[euler.utils :as u :refer [deftest parse-int]]
[euler.p008.data :refer [answer]]
[clojure.test :as t :refer [is testing]]))

(def input (str
"73167176531330624919225119674426574742355349194934"
"96983520312774506326239578318016984801869478851843"
"85861560789112949495459501737958331952853208805511"
"12540698747158523863050715693290963295227443043557"
"66896648950445244523161731856403098711121722383113"
"62229893423380308135336276614282806444486645238749"
"30358907296290491560440772390713810515859307960866"
"70172427121883998797908792274921901699720888093776"
"65727333001053367881220235421809751254540594752243"
"52584907711670556013604839586446706324415722155397"
"53697817977846174064955149290862569321978468622482"
"83972241375657056057490261407972968652414535100474"
"82166370484403199890008895243450658541227588666881"
"16427171479924442928230863465674813919123162824586"
"17866458359124566529476545682848912883142607690042"
"24219022671055626321111109370544217506941658960408"
"07198403850962455444362981230987879927244284909188"
"84580156166097919133875499200524063689912560717606"
"05886116467109405077541002256983155200055935729725"
"71636269561882670428252483600823257530420752963450"))

(defn digit-to-int [c]
(parse-int (str c)))

(defn solve [n]
(->> (map digit-to-int input)
(partition n 1)
(map #(apply * %))
(reduce max)))

(deftest part-1
(is (= 5832 (solve 4)))
(is (= (str answer)
(str (solve 13)))))

;;;; Scratch

(comment
(t/run-tests)
)

0 comments on commit a8b661a

Please sign in to comment.