Максимальная длина монотонного фрагмента последовательности.
Дана последовательность натуральных чисел, завершающаяся числом 0. Определите наибольшую длину монотонного фрагмента последовательности (то есть такого фрагмента, где все элементы либо больше предыдущего, либо меньше).
Ввод Вывод
1 2
7
7
9
1
0

Ответы

Ответ дал: BobbyFresnel
0

===== PascalABC.NET =====

begin

 var (k, kmax, s) := (1, 0, 1);

 var a := ReadInteger;

 if a = 0 then

 begin

   Print(1);

   exit

 end;

 foreach var b in ReadSeqIntegerWhile(p -> p <> 0) do

 begin

   var sgn := Sign(b - a);

   a := b;

   if sgn = s then

     k += 1

   else

   begin

     if k > kmax then

       kmax := k;  

     (k, s) := (2, sgn)

   end  

 end;

 if k > kmax then

   kmax := k;

 Print(kmax)

end.

Приложения:

tarasovegor: Люди спасибо! А можно на языке програмирования Python пж
BobbyFresnel: А можно было заранее об этом подумать, а не заставлять людей писать на мусорку?
BobbyFresnel: Или чужой труд - он тем и хорош, что бесплатный?
tarasovegor: Все ладно.
tarasovegor: На самом деле спасибо
tarasovegor: я щас сам пытаюсь в питон перевести
BobbyFresnel: А это - пожалуйста. Я знаю, что не всем везет изучать нормальный Паскаль. Но тут уж ничего не поделаешь.
Вас заинтересует