aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-156/tyler-wardhaugh/clojure/src/c156/t1.clj8
-rw-r--r--challenge-156/tyler-wardhaugh/clojure/test/c156/t1_test.clj7
2 files changed, 12 insertions, 3 deletions
diff --git a/challenge-156/tyler-wardhaugh/clojure/src/c156/t1.clj b/challenge-156/tyler-wardhaugh/clojure/src/c156/t1.clj
index c7c7c09117..de60ed1c90 100644
--- a/challenge-156/tyler-wardhaugh/clojure/src/c156/t1.clj
+++ b/challenge-156/tyler-wardhaugh/clojure/src/c156/t1.clj
@@ -1,6 +1,12 @@
(ns c156.t1
(:require [clojure.pprint :refer [cl-format]]))
+(defn pernicious?
+ [n]
+ (let [ones (BigInteger/valueOf (.bitCount (BigInteger/valueOf n)))]
+ (.isProbablePrime ones 1000)))
+
(defn -main
"Run Task 1."
- [& args])
+ [& args]
+ (cl-format true "~{~a~^, ~}~%" (->> (range) (filter pernicious?) (take 10))))
diff --git a/challenge-156/tyler-wardhaugh/clojure/test/c156/t1_test.clj b/challenge-156/tyler-wardhaugh/clojure/test/c156/t1_test.clj
index fb4361c2c7..c74bd3fa40 100644
--- a/challenge-156/tyler-wardhaugh/clojure/test/c156/t1_test.clj
+++ b/challenge-156/tyler-wardhaugh/clojure/test/c156/t1_test.clj
@@ -1,7 +1,10 @@
(ns c156.t1-test
(:require [clojure.test :refer [deftest is testing]]
- [c156.t1 :as t1]))
+ [c156.t1 :refer [pernicious?]]))
+
+; Expected Output, from https://theweeklychallenge.org/blog/perl-weekly-challenge-156/#TASK1
+(def EXPECTED [3, 5, 6, 7, 9, 10, 11, 12, 13, 14])
(deftest task-1
(testing "Task 1 produces the correct result"
- ))
+ (is (= EXPECTED (->> (range) (filter pernicious?) (take 10))))))