def process(array):
result = []
for i in range(1, len(array)-1):
if (array[i] < 0 and array[i-1] < 0) or \
(array[i] < 0 and array[i+1] < 0) or \
(array[i] > 0 and array[i-1] > 0) or \
(array[i] > 0 and array[i+1] > 0):
return 'YES'
return 'NO'
def main():
N = int(input())
assert N>=1 and N<= 10000
input_array = [int(i) for i in input().split()]
assert len(input_array) == N
print(process(input_array))
if __name__ == '__main__':
main()
Объяснение:
Протестировано на стандартном вводе/выводе + один доп тест
Доп тест:
Ввод:
5
1 2 -2 3 -4
Вывод:
YES
P.S Сайт ломает Python-код. Ниже приложен скриншот исходного кода
def process(array):
result = []
for i in range(1, len(array)-1):
if (array[i] < 0 and array[i-1] < 0) or \
(array[i] < 0 and array[i+1] < 0) or \
(array[i] > 0 and array[i-1] > 0) or \
(array[i] > 0 and array[i+1] > 0):
return 'YES'
return 'NO'
def main():
N = int(input())
assert N>=1 and N<= 10000
input_array = [int(i) for i in input().split()]
assert len(input_array) == N
print(process(input_array))
if __name__ == '__main__':
main()
Объяснение:
Протестировано на стандартном вводе/выводе + один доп тест
Доп тест:
Ввод:
5
1 2 -2 3 -4
Вывод:
YES
P.S Сайт ломает Python-код. Ниже приложен скриншот исходного кода
Uses
Crt;
Var
i, N, kol: byte;
sum_rost, sr_rost: real;
team: array[1..100] of real;
Begin
sum_rost := 0.0;
sr_rost := 0.0;
kol := 0;
write('Введите количество членов команды');
read(N);
writeln('Введите рост каждого члена команды');
for i := 1 to N do
begin
readln(team[i]);
sum_rost := sum_rost + team[i];
end;
sr_rost := sum_rost / N;
for i := 1 to N do
if (team[i] > sr_rost) then
kol := kol + 1;
writeln('Количество членов команды, рост которых превышает средний по команде (', sr_rost:4:2, ')');
write(' равно ', kol);
End.
Я надеюсь надо было на паскале написать?)