Задание 15. Информатика. ЕГЭ. Статград. 17.12.2024-1
- Просмотры: 808
- Изменено: 18 января 2025
На числовой прямой даны три отрезка: \(P = [153697; \, 780411],\) \(Q = [275071; \, 904082],\) \(R = [722050; \, 984086].\) Укажите наименьшую возможную длину такого отрезка \(A,\) для которого логическое выражение $$(\neg (x \in A)) \to (((x \in P) \equiv (x \in Q)) \to ((x \in R) \equiv (x \in Q)))$$ истинно (т.е. принимает значение \(1\)) при любом значении переменной \(x.\)
Решение:
Заметим, что если \(A\) — вся числовая прямая, то выражение \(\neg (x \in A)\) всегда ложно и наше выражение всегда истинно. Чтобы уменьшить длину \(A,\) необходимо найти, при каких значениях \(x\) выражение $$((x \in P) \equiv (x \in Q)) \to ((x \in R) \equiv (x \in Q))$$ ложно. Они и определят отрезок \(A.\) Это выражение ложно, когда \((x \in P) \equiv (x \in Q)\) истино, а \((x \in R) \equiv (x \in Q))\) ложно. Итак, $$(x \in P) \equiv (x \in Q) = 1 \Rightarrow$$ $$x \in (-\infty ; \, 153696] \cup [275071; \, 780411] \cup [904083; \, + \infty)$$ $$(x \in R) \equiv (x \in Q)) = 0 \Rightarrow$$ $$x \in [275071; \, 722049] \cup [904083; \, 984086]$$ Отрезок \(A\) должен содержать пересечение этих множеств. Т.е. \(A = [275071; \, 984086],\) а его длина \(709015.\)
Для проверки напишем программу
Python
def f(x, P, Q, R, A):
return (not (A[0] <= x <= A[1])) <= \
(((P[0] <= x <= P[1]) == (Q[0] <= x <= Q[1])) <= \
((R[0] <= x <= R[1]) == (Q[0] <= x <= Q[1])))
P = [153697, 780411]
Q = [275071, 904082]
R = [722050, 984086]
A = [275071, 984086]
print(all(f(x, P, Q, R, A) for x in range(100000, 990000)))
Изменяя границы отрезка \(A\) (левую увеличивая, а правую уменьшая), убеждаемся, что найденный нами отрезок минимальной длины.
Ответ: \(709015\)