| 1234567891011121314151617181920212223242526272829 |
- #lang racket
- (define/contract (distinct-difference-array nums)
- (-> (listof exact-integer?) (listof exact-integer?))
- (let
- ([len (length nums)])
- (for/list
- ([i (in-range len)])
- (let
- ([head (remove-duplicates (take nums (+ i 1)))]
- [tail (remove-duplicates (drop nums (+ i 1)))])
- (- (length head) (length tail))
- )
- )
- )
- )
- (define (main)
- (define (r l e)
- (printf
- "(distinct-difference-array ~a) = ~a | Exp: ~a\n"
- l (distinct-difference-array l) e
- )
- )
- (r '(1 2 3 4 5) '(-3 -1 1 3 5))
- (r '(3 2 3 4 2) '(-2 -1 0 2 3))
- )
- (main)
|