В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
gg322
gg322
16.10.2020 10:01 •  Информатика

Спитоном наибольшее произведение двух чисел
дан список, заполненный произвольными целыми числами. найдите в этом списке два числа, абсолютное произведение которых максимально. выведите эти числа в порядке неубывания.
решение должно иметь сложность o(n), где n - размер списка. то есть сортировку использовать нельзя.
тест 1
входные данные:
4 3 5 2 5
вывод программы:
5 5

Показать ответ
Ответ:
ivan200302
ivan200302
11.10.2020 00:55

a = list(map(int, input.split()))

for i in range(len(a)):

a[i] = abs(a[i])

m = max(a)

a.pop(a.index(m))

n = max(a)

print(min(m, n), max(m, n))

Принцип решения в том, чтобы убрать все минусы у чисел, взять максимум, сохранить его и удалить из списка, а затем взять ещё один максимум, потом вывести числа в порядке неубывания.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота