Найти наибольшую последовательность чисел в списке - Lisp

Узнай цену своей работы

Формулировка задачи:

Нужно найти в списке самую длинную убывающую или растущую последовательность чисел Например Вводим список 8 4 2 3 2 Получаем две последовательности 8 4 2 и 3 2, нам нужен 8 4 2 так как он длиннее.

Решение задачи: «Найти наибольшую последовательность чисел в списке»

textual
Листинг программы
(let ((longest '()) (long-len 0) (temp (list (first all))) (temp-len 1))
    (dolist (el all)
        (if (<= el (car temp)) 
            (push el temp) 
            (when (> temp-len longest-len)
                (setf longest temp)
                (setf longest-len temp-len))
                )       
        ))

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.25 из 5
Похожие ответы