0
從列表pl讀取多項式(請參閱下面的輸入格式)並將其作爲排序列表返回。在lisp中從輸入流讀取多項式
舉例:(ReadPolynomial2 '(99 0 17 200 3 150 8 200 0 0))
應該返回((99 0) (3 150) (25 200))
從列表pl讀取多項式(請參閱下面的輸入格式)並將其作爲排序列表返回。在lisp中從輸入流讀取多項式
舉例:(ReadPolynomial2 '(99 0 17 200 3 150 8 200 0 0))
應該返回((99 0) (3 150) (25 200))
我不知道你是否還需要它,但在這裏它是一個可能的解決方案:
(defun ReadPolynomial2 (lst)
(let ((even-positions (loop for p in (cdr lst) by #'cddr collect p)))
(loop for p in (remove-duplicates even-positions)
collect (list (loop for x on lst by #'cddr
when (= p (second x))
sum (first x)) p))))
哇,你甚至沒有複製所有的考試 – wroniasty
我需要儘快做到這一點..我沒有Lisp知識,上週我因發燒而失望,所以無法工作 –
這不是考試。應該添加相同程度的數字(係數)並顯示出來。 –