--- /dev/null
+(ns adventofcode2019.day04
+ [:require [adventofcode2019.lib :refer :all]
+ [clojure.string :as str]
+ [clojure.math.combinatorics :as combo]])
+
+(defn find-passwords [low high]
+ (let [dupe-digits #(some (partial apply =) (partition 2 1 %))
+ increasing (partial apply <=)
+ to-digits #(map int (str %))]
+ (->> (range low (inc high))
+ (map to-digits)
+ (filter (every-pred dupe-digits increasing)))))
+
+(defn day04 []
+ (let [[low high] [0 1]
+ passwords (find-passwords low high)]
+ (part1 (count passwords))
+ #_(part2 nil)))