Информатика, вопрос задал мурлыка2003 , 7 лет назад

Python

Определить есть ли в массиве из 30 элементов хотя бы одна тройка соседних чисел, в которой средний элемент больше своих "соседей", т. е. предшествующего и последующего. В случае положительного ответа определить номера элементов первой из таких троек. Результат вывести на экран.

Просьба написать кратко и на уровне новичка
решение на паскале прилагаю
N = 100500;
var
a: array[1..N] of integer;
i,index: integer;
begin
for i :=1 to N do
read(a[i]);
index := -1;
for i := 2 to (N─1) do
if ((a[i] > a[i─1]) and (a[i] > a[i+1]) and (index=-1)) then index := i;
if (index = -1) then
write('Нет таких чисел')
else
write(index─1,' ',index,' ',index+1);
end.

Ответы на вопрос

Ответил utis
0

N = 100500

a = []

for i in range(1,N):

   a.append(int(input()))

index = -1

for i in range(2,N-1):

   if a[i] > a[i-1] and a[i] > a[i+1] and index == -1:

       index = i

if index == -1:

   print('Нет таких чисел')

else:

   print(str(index-1) + '' + str(index) + '' + str(index+1))

Ответил мурлыка2003
0
прошу прощения), но почему при вводе чисел не выводится результат, а просто переносится на следующую строку ввода
Ответил utis
0
Я особо задание не читал, просто перевёл на питон
Ответил utis
0
ууу, в комментах вообще все табуляции слетают
Новые вопросы