summaryrefslogtreecommitdiff
path: root/euler76.scm
diff options
context:
space:
mode:
Diffstat (limited to 'euler76.scm')
-rw-r--r--euler76.scm17
1 files changed, 17 insertions, 0 deletions
diff --git a/euler76.scm b/euler76.scm
new file mode 100644
index 0000000..2542356
--- /dev/null
+++ b/euler76.scm
@@ -0,0 +1,17 @@
+(define (sum_ways n)
+ (define (sw n min-n)
+ (cond
+ [(> min-n n) 0]
+ [(> (* min-n 2) n) 1]
+ [else (+ (sw (- n min-n) min-n) (sw n (+ min-n 1)))]
+ )
+ )
+
+ (define (sw-iter sum i)
+ (if (> (* i 2) n) sum
+ (sw-iter (+ sum (sw (- n i) i)) (+ i 1))))
+
+ (sw-iter 0 1))
+
+(display (sum_ways 100))
+(newline)