Найти в Дзене

Разбор номера 10098 ЕГЭ по информатике #15

Оглавление

Условие: № 10098 Демоверсия 2024 (Уровень: Базовый)
Статья подготовлена командой itpy, подписывайтесь на наш телеграм канал!

Для какого наименьшего целого неотрицательного числа A выражение
(x + 2y < A) ∨ (y > x) ∨ (x > 60) тождественно истинно, т.е. принимает значение 1 при любых целых неотрицательных x и y?

-2
def F(x, y, A):
return (x + 2 * y < A) or (y > x) or (x > 60)

for A in range(0, 1000):
if all(F(x, y, A) for x in range(0, 100) for y in range(0, 100)):
print(A)
break

Комментарии к решению:

  1. def F(x, y, A): - создаем функцию с именем F и параметрами x, y, A.
  2. return (x + 2 * y < A) or (y > x) or (x > 60) - возвращаем результат логического выражения, которое проверяет три условия: (x + 2 * y < A), (y > x), (x > 60).
  3. for A in range(0, 1000): - начинаем цикл, перебирая значения A от 0 до 999 (т.к. нам сказано, что число A целое и неотрицательное)
  4. if all(F(x, y, A) for x in range(0, 100) for y in range(0, 100)): - проверяем, если все значения функции F для каждой комбинации x и y в диапазоне 1000 являются истинными. (F == 1 / F == True) Если функция возвращает нам истину, то мы прекращаем работу цикла и останавливаемся на нужном значении A.
  5. print(A) - выводим значение A.
  6. break - прерываем выполнение цикла после вывода первого (наименьшего) значения A.

Ответ: 181

Читайте нас в телеграмме:

Информатика ЕГЭ | itpy 👨‍💻

Присоединяйся к нашему Телеграм каналу: t.me/informatika_kege_itpy
Присоединяйся к нашему Телеграм каналу: t.me/informatika_kege_itpy