(defun paikone (seq)
(coerce (apply #'append (map 'list (lambda (x y) (list y x))
(subseq seq 0 (/ (length seq) 2))
(reverse (subseq seq (/ (length seq) 2)))))
(type-of seq)))
(defun depaikone (seq)
(coerce (let ((a (loop for i from 1 upto (- (length seq) 1) by 2
collect (elt seq i)))
(b (reverse (loop for i from 0 upto (- (length seq) 2) by 2
collect (elt seq i)))))
(append a b))
(type-of seq)))
(let ((pie (print "abcdef"))
(n 1))
(dotimes (_ n) (setf pie (print (paikone pie))))
(dotimes (_ n) (setf pie (print (depaikone pie)))))
(terpri)
(let ((pie (print '(1 2 3 4 5 6)))
(n 2))
(dotimes (_ n) (setf pie (print (paikone pie))))
(dotimes (_ n) (setf pie (print (depaikone pie)))))
KGRlZnVuIHBhaWtvbmUgKHNlcSkKICAoY29lcmNlIChhcHBseSAjJ2FwcGVuZCAobWFwICdsaXN0IChsYW1iZGEgKHggeSkgKGxpc3QgeSB4KSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdWJzZXEgc2VxIDAgKC8gKGxlbmd0aCBzZXEpIDIpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHJldmVyc2UgKHN1YnNlcSBzZXEgKC8gKGxlbmd0aCBzZXEpIDIpKSkpKQogICAgICAgICAgKHR5cGUtb2Ygc2VxKSkpCgooZGVmdW4gZGVwYWlrb25lIChzZXEpCiAgKGNvZXJjZSAobGV0ICgoYSAobG9vcCBmb3IgaSBmcm9tIDEgdXB0byAoLSAobGVuZ3RoIHNlcSkgMSkgYnkgMgogICAgICAgICAgICAgICAgICAgICAgICAgY29sbGVjdCAoZWx0IHNlcSBpKSkpCiAgICAgICAgICAgICAgICAoYiAocmV2ZXJzZSAobG9vcCBmb3IgaSBmcm9tIDAgdXB0byAoLSAobGVuZ3RoIHNlcSkgMikgYnkgMgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sbGVjdCAoZWx0IHNlcSBpKSkpKSkKICAgICAgICAgICAgKGFwcGVuZCBhIGIpKQogICAgICAgICAgKHR5cGUtb2Ygc2VxKSkpCgoobGV0ICgocGllIChwcmludCAiYWJjZGVmIikpCiAgICAgIChuIDEpKQogIChkb3RpbWVzIChfIG4pIChzZXRmIHBpZSAocHJpbnQgKHBhaWtvbmUgcGllKSkpKQogIChkb3RpbWVzIChfIG4pIChzZXRmIHBpZSAocHJpbnQgKGRlcGFpa29uZSBwaWUpKSkpKQoKKHRlcnByaSkKCihsZXQgKChwaWUgKHByaW50ICcoMSAyIDMgNCA1IDYpKSkKICAgICAgKG4gMikpCiAgKGRvdGltZXMgKF8gbikgKHNldGYgcGllIChwcmludCAocGFpa29uZSBwaWUpKSkpCiAgKGRvdGltZXMgKF8gbikgKHNldGYgcGllIChwcmludCAoZGVwYWlrb25lIHBpZSkpKSkpCg==