From 928dcb5572d7c290594625c82b06b4faaa0d712f Mon Sep 17 00:00:00 2001 From: Aryadev Chavali Date: Fri, 1 Nov 2024 02:32:49 +0000 Subject: Finished problem 4 of 2015 in racket --- 2015/puzzle-4.rkt | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 2015/puzzle-4.rkt (limited to '2015/puzzle-4.rkt') diff --git a/2015/puzzle-4.rkt b/2015/puzzle-4.rkt new file mode 100644 index 0000000..6641bff --- /dev/null +++ b/2015/puzzle-4.rkt @@ -0,0 +1,20 @@ +#lang racket + +(require racket/file) +(require file/md5) + +(define input (file->string "4-input")) + +(define (find-salt requested-string current) + (let* ([full-message (string-append input (number->string current))] + [hash (bytes->string/locale (md5 full-message))]) + (if (string-prefix? hash requested-string) + current + (find-salt requested-string (+ current 1))))) + +(printf "Round 1: ~a~%" (find-salt "00000" 0)) +(printf "Round 2: ~a~%" (find-salt "000000" 0)) + +;; Local Variables: +;; compile-command: "racket puzzle-4.rkt" +;; End: -- cgit v1.2.3-13-gbd6f