Skip to content

Commit 29617b4

Browse files
committed
exercise 4.44: another optimization, but still too slow
1 parent 53e97e2 commit 29617b4

File tree

1 file changed

+20
-12
lines changed

1 file changed

+20
-12
lines changed

chapter4/chapter4.03.scm

+20-12
Original file line numberDiff line numberDiff line change
@@ -375,18 +375,26 @@
375375
(let ((this-column (car columns))
376376
(this-row (car rows)))
377377
(this-ok? this-column this-row rest-columns rest-rows))))))
378-
(let ((q1 (amb 1 2 3 4 5 6 7 8))
379-
(q2 (amb 1 2 3 4 5 6 7 8))
380-
(q3 (amb 1 2 3 4 5 6 7 8))
381-
(q4 (amb 1 2 3 4 5 6 7 8))
382-
(q5 (amb 1 2 3 4 5 6 7 8))
383-
(q6 (amb 1 2 3 4 5 6 7 8))
384-
(q7 (amb 1 2 3 4 5 6 7 8))
385-
(q8 (amb 1 2 3 4 5 6 7 8)))
386-
(let ((columns (list q1 q2 q3 q4 q5 q6 q7 q8))
387-
(rows (list 1 2 3 4 5 6 7 8)))
388-
(require (ok-position? columns rows))
389-
(list q1 q2 q3 q4 q5 q6 q7 q8))))
378+
(let ((q1 (amb 1 2 3 4 5 6 7 8)))
379+
(let ((q2 (amb 1 2 3 4 5 6 7 8)))
380+
(require (distinct? (list q1 q2)))
381+
(let ((q3 (amb 1 2 3 4 5 6 7 8)))
382+
(require (distinct? (list q1 q2 q3)))
383+
(let ((q4 (amb 1 2 3 4 5 6 7 8)))
384+
(require (distinct? (list q1 q2 q3 q4)))
385+
(let ((q5 (amb 1 2 3 4 5 6 7 8)))
386+
(require (distinct? (list q1 q2 q3 q4 q5)))
387+
(let ((q6 (amb 1 2 3 4 5 6 7 8)))
388+
(require (distinct? (list q1 q2 q3 q4 q5 q6)))
389+
(let ((q7 (amb 1 2 3 4 5 6 7 8)))
390+
(require (distinct? (list q1 q2 q3 q4 q5 q6 q7)))
391+
(let ((q8 (amb 1 2 3 4 5 6 7 8)))
392+
(require (distinct? (list q1 q2 q3 q4 q5 q6 q7 q8)))
393+
(let ((columns (list q1 q2 q3 q4 q5 q6 q7 q8))
394+
(rows (list 1 2 3 4 5 6 7 8)))
395+
(require (distinct? (list q1 q2 q3 q4 q5 q6 q7 q8)))
396+
(require (ok-position? columns rows))
397+
(list q1 q2 q3 q4 q5 q6 q7 q8)))))))))))
390398

391399
;;
392400
;; prototype of the functions above

0 commit comments

Comments
 (0)