aboutsummaryrefslogtreecommitdiff
path: root/leetcode/lc-788-rotated-digits.rkt
diff options
context:
space:
mode:
authorHJ <thechairman@thechairman.info>2023-01-17 12:46:04 -0500
committerHJ <thechairman@thechairman.info>2023-01-17 12:46:04 -0500
commitfafbeaf9e3c09ba7a5bea7e47d5736001f8a5aa1 (patch)
treed586a28650cbbfb20ece931a85bcce4c29e5e40b /leetcode/lc-788-rotated-digits.rkt
parentbc5387512ba529072338648d6337ddab731b8b8c (diff)
downloadgleam_aoc-fafbeaf9e3c09ba7a5bea7e47d5736001f8a5aa1.tar.gz
gleam_aoc-fafbeaf9e3c09ba7a5bea7e47d5736001f8a5aa1.zip
adding old leetcode solutions
Diffstat (limited to 'leetcode/lc-788-rotated-digits.rkt')
-rw-r--r--leetcode/lc-788-rotated-digits.rkt17
1 files changed, 17 insertions, 0 deletions
diff --git a/leetcode/lc-788-rotated-digits.rkt b/leetcode/lc-788-rotated-digits.rkt
new file mode 100644
index 0000000..79400b8
--- /dev/null
+++ b/leetcode/lc-788-rotated-digits.rkt
@@ -0,0 +1,17 @@
+#lang racket
+
+(define/contract (rotated-digits max-n)
+ (-> exact-integer? exact-integer?)
+ (for/fold ([good-number-count 0])
+ ([n (in-range 1 (add1 max-n))])
+ (if (is-good? n)
+ (add1 good-number-count)
+ good-number-count)))
+
+(define/contract (is-good? test-number)
+ (-> exact-integer? boolean?)
+ (define test-string (number->string test-number))
+ (match test-string
+ [(regexp #rx"^[018]*$") #false]
+ [(regexp #rx"^[0125689]*$") #true]
+ [_ #false])) \ No newline at end of file