Тип 15 № 27276 
Преобразование логических выражений. Координатная плоскость
i
Для какого наименьшего целого неотрицательного числа А выражение
(2x + 3y < A) ∨ (x ≥ y) ∨ (y > 24)
тождественно истинно, то есть принимает значение 1 при любых целых неотрицательных x и y?
Решение.
Решим задачу графически. Условия (x ≥ y) и (y > 24) задают множество, отмеченное на рисунке закрашенной областью. Чтобы исходное выражение было тождественно истинно для любых целых и неотрицательных x и y, прямая 2x + 3y = A должна проходить выше точки (23; 24). Таким образом, наименьшее целое неотрицательное А, удовлетворяющее условию задачи, — это A, равное 119.
Приведем аналитическое решение.
Если истинно одно из выражений (x ≥ y) или (y > 24), то выражение (2x + 3y < A) ∨ (x ≥ y) ∨ (y > 24) истинно независимо от значения А.
Если же оба выражения (x ≥ y) и (y > 24) ложны, то есть при выполнении условий (x < y) и (y ≤ 24), выражение 2x + 3y < A должно быть истинным.
Найдем максимально возможное значение выражения 2x + 3y при выполнении условий (x < y) и (y ≤ 24).
Заметим, что для целых чисел неравенство (x < y) равносильно неравенству (x ≤ y–1). Тогда
2x + 3y ≤ 2(y–1) + 3y = 5y – 2 ≤ 120 – 2 = 118.
Таким образом, должно выполняться условие 118 < А, откуда А = 119.
Ответ: 119.
Приведём другое решение на языке Python.
for A in range(300):
k = 0
for x in range(300):
for y in range(300):
if (2 * x + 3 * y < A) or (x >= y) or (y > 24):
k += 1
if k == 90_000:
print(A)
break
Ответ: 119