aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJan Tuomi <jans.tuomi@gmail.com>2022-12-04 18:33:40 +0200
committerJan Tuomi <jans.tuomi@gmail.com>2022-12-04 18:38:58 +0200
commit686339d1fae622df20fa73b72b632ca3cb7fd7be (patch)
treef81f500f80bb0ac453a01aa10616959a75b2c67c /src
parent1adba42708436a86db1f369028fb6fae4bc4eda8 (diff)
Add .clj-kondo/config.edn, fix warnings
Diffstat (limited to 'src')
-rw-r--r--src/aoc_2022/day01.clj9
-rw-r--r--src/aoc_2022/day02.clj10
-rw-r--r--src/aoc_2022/day03.clj13
-rw-r--r--src/aoc_2022/day04.clj11
-rw-r--r--src/aoc_2022/utils.clj13
5 files changed, 25 insertions, 31 deletions
diff --git a/src/aoc_2022/day01.clj b/src/aoc_2022/day01.clj
index c26c87c..2bced4b 100644
--- a/src/aoc_2022/day01.clj
+++ b/src/aoc_2022/day01.clj
@@ -12,14 +12,14 @@
(defn task1 [rows]
(->> rows
- (map (fn [row] (if (not (empty? row)) (Long/valueOf row) "")))
+ (map (fn [row] (if (seq row) (Long/valueOf row) "")))
(split-by "" [])
(map (fn [calories] (reduce + calories)))
(reduce max)))
(defn task2 [rows]
(->> rows
- (map (fn [row] (if (not (empty? row)) (Long/valueOf row) "")))
+ (map (fn [row] (if (seq row) (Long/valueOf row) "")))
(split-by "" [])
(map (fn [calories] (reduce + calories)))
sort
@@ -29,6 +29,5 @@
(with-open [rdr (io/reader "resources/day01_actual.txt")]
(let [rows (line-seq rdr)]
- (do
- (println "task1:" (task1 rows))
- (println "task2:" (task2 rows)))))
+ (println "task1:" (task1 rows))
+ (println "task2:" (task2 rows))))
diff --git a/src/aoc_2022/day02.clj b/src/aoc_2022/day02.clj
index 45bba95..25573fd 100644
--- a/src/aoc_2022/day02.clj
+++ b/src/aoc_2022/day02.clj
@@ -1,6 +1,6 @@
(ns aoc-2022.day02)
(require '[clojure.java.io :as io])
-(require '[aoc-2022.utils :as utils])
+(require '[aoc-2022.utils :refer :all])
(defn score-round-result [own opp]
(cond
@@ -17,9 +17,6 @@
:paper 2
:scissors 3})
-(defn score-round [own opp]
- (+ (score-round-result own opp) (get score-own-play own)))
-
(def plays
{\A :rock
\B :paper
@@ -63,6 +60,5 @@
(with-open [rdr (io/reader "resources/day02_actual.txt")]
(let [rows (line-seq rdr)]
- (do
- (println "task1:" (task1 rows))
- (println "task2:" (task2 rows)))))
+ (println "task1:" (task1 rows))
+ (println "task2:" (task2 rows))))
diff --git a/src/aoc_2022/day03.clj b/src/aoc_2022/day03.clj
index 38ae011..53d162e 100644
--- a/src/aoc_2022/day03.clj
+++ b/src/aoc_2022/day03.clj
@@ -1,6 +1,6 @@
(ns aoc-2022.day03)
(require '[clojure.java.io :as io])
-(require '[aoc-2022.utils :as utils])
+(require '[aoc-2022.utils :refer :all])
(defn compartments [sack]
(let [n (count sack)]
@@ -12,7 +12,7 @@
occurs (fn [hs] (filter #(= needle %) hs))]
(cond
(nil? needle) nil
- (not (empty? (occurs haystack))) needle
+ (seq(occurs haystack)) needle
:else (find-common (rest needles) haystack))))
(defn priority-of [item]
@@ -35,8 +35,8 @@
(nil? needle)
nil
(and
- (not (empty? (occurs hs1)))
- (not (empty? (occurs hs2))))
+ (seq (occurs hs1))
+ (seq (occurs hs2)))
needle
:else
(find-common2 (rest needles) hs1 hs2))))
@@ -50,6 +50,5 @@
(with-open [rdr (io/reader "resources/day03_actual.txt")]
(let [rows (line-seq rdr)]
- (do
- (println "task1:" (task1 rows))
- (println "task2:" (task2 rows)))))
+ (println "task1:" (task1 rows))
+ (println "task2:" (task2 rows))))
diff --git a/src/aoc_2022/day04.clj b/src/aoc_2022/day04.clj
index bd4d562..c046cb7 100644
--- a/src/aoc_2022/day04.clj
+++ b/src/aoc_2022/day04.clj
@@ -1,7 +1,7 @@
(ns aoc-2022.day04)
-(require '[aoc-2022.utils :refer :all])
(require '[clojure.java.io :as io])
(require '[clojure.string :as str])
+(require '[aoc-2022.utils :refer :all])
(defn parse-rows [rows]
(->> rows
@@ -23,7 +23,7 @@
count))
(defn assignment-overlaps [[a1 a2 b1 b2]]
- (not (or (> a1 b2) (> b1 a2))))
+ (nor (> a1 b2) (> b1 a2)))
(def task2
(chain
@@ -33,7 +33,6 @@
(with-open [rdr (io/reader "resources/day04_actual.txt")]
(let [rows (line-seq rdr)]
- (do
- (println "task1:" (task1 rows))
- (println "task2:" (task2 rows))
- :done)))
+ (println "task1:" (task1 rows))
+ (println "task2:" (task2 rows))
+ :done))
diff --git a/src/aoc_2022/utils.clj b/src/aoc_2022/utils.clj
index 4ade901..c59d498 100644
--- a/src/aoc_2022/utils.clj
+++ b/src/aoc_2022/utils.clj
@@ -33,15 +33,16 @@
`task1` and `task2` should take a list of strings as their first argument."
[day task1 task2]
(let [{:keys [sample actual]} (read-aoc day)]
- (do
- (println "task1 @ sample:" (task1 sample))
- (println "task1 @ actual:" (task1 actual))
- (println "task2 @ sample:" (task2 sample))
- (println "task2 @ actual:" (task2 actual)))))
+ (println "task1 @ sample:" (task1 sample))
+ (println "task1 @ actual:" (task1 actual))
+ (println "task2 @ sample:" (task2 sample))
+ (println "task2 @ actual:" (task2 actual))))
; Functions
-(defn chain "forward compose: comp fns in reverse order" [& fns]
+(defn chain
+ "forward compose: comp fns in reverse order"
+ [& fns]
(apply comp (reverse fns)))
; Logic