Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
39
Task/Periodic-table/Scheme/periodic-table-1.ss
Normal file
39
Task/Periodic-table/Scheme/periodic-table-1.ss
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
(define (position-increment n)
|
||||
(cond
|
||||
((= n 1) '( 0 . 17))
|
||||
((= n 2) '( 1 . -17))
|
||||
((= n 4) '( 0 . 11))
|
||||
((= n 10) '( 1 . -17))
|
||||
((= n 12) '( 0 . 11))
|
||||
((= n 18) '( 1 . -17))
|
||||
((= n 36) '( 1 . -17))
|
||||
((= n 54) '( 1 . -17))
|
||||
((= n 56) '( 2 . 2))
|
||||
((= n 71) '(-2 . -14))
|
||||
((= n 86) '( 1 . -17))
|
||||
((= n 88) '( 2 . 2))
|
||||
((= n 103) '(-2 . -14))
|
||||
(else '( 0 . 1))))
|
||||
|
||||
(define (move p i)
|
||||
(cons (+ (car p) (car i))
|
||||
(+ (cdr p) (cdr i))))
|
||||
|
||||
(define (position n)
|
||||
(if (= n 1)
|
||||
'(1 . 1)
|
||||
(let ((m (- n 1)))
|
||||
(move (position m)
|
||||
(position-increment m)))))
|
||||
|
||||
(define (format-line n p)
|
||||
(display n)
|
||||
(display " -> ")
|
||||
(display (car p))
|
||||
(display " ")
|
||||
(display (cdr p))
|
||||
(newline))
|
||||
|
||||
(for-each (lambda (n)
|
||||
(format-line n (position n)))
|
||||
(list 1 2 29 42 57 58 72 89))
|
||||
9
Task/Periodic-table/Scheme/periodic-table-2.ss
Normal file
9
Task/Periodic-table/Scheme/periodic-table-2.ss
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
(define position*
|
||||
(let ((memo (make-vector 118 #f)))
|
||||
(lambda (n)
|
||||
(let* ((mi (- n 1))
|
||||
(mp (vector-ref memo mi)))
|
||||
(or mp
|
||||
(let ((p (position n)))
|
||||
(vector-set! memo mi p)
|
||||
p))))))
|
||||
Loading…
Add table
Add a link
Reference in a new issue