diff options
Diffstat (limited to 'racket/leetcode/lc-1018-binary-prefix.rkt')
-rw-r--r-- | racket/leetcode/lc-1018-binary-prefix.rkt | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/racket/leetcode/lc-1018-binary-prefix.rkt b/racket/leetcode/lc-1018-binary-prefix.rkt new file mode 100644 index 0000000..fa82681 --- /dev/null +++ b/racket/leetcode/lc-1018-binary-prefix.rkt @@ -0,0 +1,11 @@ +#lang racket +(define/contract (prefixes-div-by5 A) + (-> (listof exact-integer?) (listof boolean?)) + (define ns (make-vector (length A) #false)) + (for/fold ([acc 0]) + ([b (in-list A)] + [i (in-naturals)]) + (let ([test-val (remainder (+ (* 2. acc) b) 5)]) + (when (= 0 test-val) (vector-set! ns i #true)) + test-val)) + (vector->list ns))
\ No newline at end of file |