Advertisement
Guest User

Untitled

a guest
Feb 21st, 2018
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.85 KB | None | 0 0
  1. #lang racket
  2. (require racket/class
  3. racket/set
  4. lazy/force
  5. racket/promise
  6. (only-in racket/list shuffle argmax))
  7.  
  8. (define vv (vector
  9. (vector #\e #\e #\e #\e #\e #\e)
  10. (vector #\e #\e #\e #\e #\e #\e)
  11. (vector #\e #\e #\b #\w #\e #\e)
  12. (vector #\e #\e #\w #\b #\e #\e)
  13. (vector #\e #\e #\e #\e #\e #\e)
  14. (vector #\e #\e #\e #\e #\e #\e)
  15. ))
  16.  
  17. ;(for ([i '(1 2 3 4 5 6)])
  18. ; (println (vector-ref vv (sub1 i))))
  19.  
  20. ;(map vector->list (vector->list vv))
  21.  
  22. ;(define v '(#\b #\b #\w))
  23.  
  24. ;(foldl + 0 '(1 2 3 4))
  25.  
  26. ;(foldl (lambda (x result) (+ result (if (equal? x #\b) 1 0))) 0 '(#\b #\b #\w))
  27.  
  28. ;(define (sum-label lst label) (foldl (lambda (x result) (+ result (if (equal? x #\b) 1 0))) 0 lst))
  29.  
  30. ;(sum-label v #\b)
  31.  
  32. ;(define (sum-lists-label ll label) (foldl (lambda (x result) (+ result (sum-label x label))) 0 ll))
  33.  
  34. ;sum-lists-label (map vector->list (vector->list vv)) #\b)
  35.  
  36. ;(> 7 6)
  37.  
  38. ;(if #f 5 6)
  39.  
  40. ;(print (vector-ref vv 1))
  41.  
  42. ;(vector-set! (vector-ref vv 1) 1 #\e)
  43.  
  44. ;(print vv)
  45.  
  46. (define vec (vector #\e #\e #\w #\e #\e #\e #\e #\w))
  47.  
  48. (println vec)
  49. (define (apply-vec v m label)
  50. (define (apply-dir vec m dir label)
  51. (define (explore vec m dir label)
  52. (cond ((or (equal? m 0) (equal? m (vector-length vec))) #f)
  53. ((equal? (vector-ref vec m) label) #t)
  54. (else (if (explore vec (+ m dir) dir label)
  55. (begin (println m)
  56. (vector-set! vec m label)
  57. #t)
  58. #f))))
  59. (explore vec (+ m dir) dir label))
  60. (set! m (sub1 m))
  61. (vector-set! v m label)
  62. (apply-dir vec m 1 label)
  63. (apply-dir vec m -1 label))
  64.  
  65.  
  66. (apply-vec vec 6 #\w)
  67. (println vec)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement