Задание 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\)