diff options
author | Nguyễn Gia Phong <vn.mcsinyx@gmail.com> | 2018-10-20 11:27:47 +0700 |
---|---|---|
committer | Nguyễn Gia Phong <vn.mcsinyx@gmail.com> | 2018-10-20 11:27:47 +0700 |
commit | 4c5ed94087a691ce47882786aea64f7b5bf3c130 (patch) | |
tree | 6ebb9374e9c9e1d867659a1de166fbe8f6481b19 /codechef/spread2.lisp | |
parent | 662168dbd56cbeba35bea782d580b0f7cc9a3ac2 (diff) | |
download | cp-4c5ed94087a691ce47882786aea64f7b5bf3c130.tar.gz |
Bon appétit
Diffstat (limited to 'codechef/spread2.lisp')
-rw-r--r-- | codechef/spread2.lisp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/codechef/spread2.lisp b/codechef/spread2.lisp new file mode 100644 index 0000000..db26024 --- /dev/null +++ b/codechef/spread2.lisp @@ -0,0 +1,14 @@ +(defun next (m result) + (if (> m 0) + (next (1- m) (+ (read) result)) + result)) + +(defun spread2 (n sum &optional (result 1)) + (if (< sum n) + (spread2 (- n sum) (next sum sum) (1+ result)) + (dotimes (i n result) (read)))) + +(let ((tests (read))) + (dotimes (i tests) + (format t "~a~&" (spread2 (1- (read)) (read))))) + |