aboutsummaryrefslogtreecommitdiff
path: root/racket/aoc2015/day-04/day-04.rkt
blob: 2c1604343ddd4ae89911c4bf46bbb105767d168c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#lang racket
(require "../../jj-aoc.rkt"
         threading
         file/md5)

(define secret-key (~> (open-day 4 2015) port->string string-trim))

(define (find-n-zeroes n)
  (for/first ([i (in-naturals)]
              #:when
              (~>> i (~a secret-key) md5 bytes->string/utf-8 (string-prefix? _ (make-string n #\0))))
    i))

;; part 1
(time (find-n-zeroes 5))

;; part 2
(time (find-n-zeroes 6))