(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)