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

Проверьте решение дан набор из n целых положительных чисел. из них нужно выбрать и вывести два числа так, чтобы их сумма была нечётна, а произведение делилось на 3 и при этом было максимально возможным. выбранные числа можно выводить в любом порядке. если есть несколько подходящих пар, можно выбрать любую из них. если подходящих пар нет, нужно вывести 0. напишите эффективную по времени и по памяти программу для решения этой . программа считается эффективной по времени, если при увеличении количества исходных чисел n в k раз время работы программы увеличивается не более чем в k раз. программа считается эффективной по памяти, если память, необходимая для хранения всех переменных программы, не превышает 1 килобайта и не увеличивается с ростом n. описание входных и выходных данных в первой строке входных данных задаётся количество чисел n (1 ≤ n ≤ 1000). в каждой из последующих n строк записано одно натуральное число, не превышающее 100. пример входных данных: 5 1 2 3 4 5 пример выходных данных для выше примера входных данных: 3 4 пояснение. из 5 чисел можно составить 10 пар. в данном случае условиям удовлетворяют две пары: (2, 3) и (3, 4). суммы чисел в этих парах (5 и 7) нечётны, а произведения (6 и 12) делятся на 3. у всех остальных пар как минимум одно из этих условий не выполняется. из двух возможных пар выводим ту, в которой больше произведение элементов. решение находим максимальные чётные и нечётные числа среди всех и отдельно среди кратных 3, вычисляем подходящие произведения, выбираем из них максимальное. алг нач цел x0, x1, y0, y1 ввод n x0 : = 0; x1 : = 0 y0 : = 0; y1 : = 0 нц n раз ввод a если mod(a,3)= 0 и mod(a,2) = 0 и a > x0: то x0 : =a все если mod(a,3)= 0 и mod(a,2) = 1 и a > x1: то x1 : =a все если mod(a,2) = 0 и a > y0: то y0 : =a все если mod(a,2) = 1 и a > y1: то y1 : =a все кц если x0*y1 = 0 и x1*y0 = 0 то вывод 0 иначе если x0*y1 > x1*y0 то вывод x0, ' ', y1 иначе вывод x1, ' ', y0 все все кон укажите ошибки в программе, если такие есть.

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