From 6114504d730d85a98bd55ee09c9d94c76ea8fbe2 Mon Sep 17 00:00:00 2001 From: Matthew Butterick Date: Sun, 10 Dec 2017 08:11:37 -0800 Subject: [PATCH] in-slice --- 2017/d10/main.rkt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/2017/d10/main.rkt b/2017/d10/main.rkt index 5dbc73e..30a18bc 100644 --- a/2017/d10/main.rkt +++ b/2017/d10/main.rkt @@ -1,5 +1,5 @@ #lang br/quicklang -(require "../helper.rkt") +(require "../helper.rkt" racket/sequence) (provide read-syntax (rename-out [#%mb #%module-begin])) (define (read-syntax path port) @@ -26,9 +26,8 @@ (define (two-star str) (define ascii-chars (map char->integer (string->list str))) (reverse-segments (append ascii-chars '(17 31 73 47 23)) #:count 64) - (define dense-hash (for/list ([i (in-range 16)]) - (apply bitwise-xor (for/list ([v (in-vector vec (* i 16) (* (add1 i) 16))]) - v)))) + (define dense-hash (for/list ([vals (in-slice 16 (vector->list vec))]) + (apply bitwise-xor vals))) (string-append* (for/list ([num (in-list dense-hash)]) (~r num #:base 16 #:min-width 2 #:pad-string "0"))))