На числовой прямой даны два отрезка: B = [22; 40] и C = [32; 50].
Укажите наименьшую возможную длину такого отрезка A, для которого логическое выражение
¬(x ∈ A) → ((x ∈ B) ≡ (x ∈ C))
истинно (т. е. принимает значение 1) при любом значении переменной x.
Решение
Шаг 1. Фрагмент программы
B = range(22, 41)
C = range(32, 51)
Разбираем следующий фрагмент программы.
Шаг 2. Фрагмент программы
best = 10**9
for a0 in range(1, 100):
Разбираем следующий фрагмент программы.
Шаг 3. Фрагмент программы
for a1 in range(a0 + 1, 100):
A = range(a0, a1 + 1)
for x in range(1, 200):
Разбираем следующий фрагмент программы.
Шаг 4. Фрагмент программы
if (x not in A) and ((x in B) != (x in C)):
break
Разбираем следующий фрагмент программы.
Шаг 5. Ответ
else:
best = min(best, a1 - a0)
print(best)
Печатаем ответ: 28.
Решение
Шаг 1. Фрагмент программы
B = range(22, 41)
C = range(32, 51)
Разбираем следующий фрагмент программы.
Шаг 2. Фрагмент программы
best = 10**9
for a0 in range(1, 100):
Разбираем следующий фрагмент программы.
Шаг 3. Фрагмент программы
for a1 in range(a0 + 1, 100):
A = range(a0, a1 + 1)
for x in range(1, 200):
Разбираем следующий фрагмент программы.
Шаг 4. Фрагмент программы
if (x not in A) and ((x in B) != (x in C)):
break
Разбираем следующий фрагмент программы.
Шаг 5. Ответ
else:
best = min(best, a1 - a0)
print(best)
Печатаем ответ: 28.
Решение
Шаг 1. Фрагмент программы
B = range(22, 41)
C = range(32, 51)
Разбираем следующий фрагмент программы.
Шаг 2. Фрагмент программы
best = 10**9
for a0 in range(1, 100):
Разбираем следующий фрагмент программы.
Шаг 3. Фрагмент программы
for a1 in range(a0 + 1, 100):
A = range(a0, a1 + 1)
for x in range(1, 200):
Разбираем следующий фрагмент программы.
Шаг 4. Фрагмент программы
if (x not in A) and ((x in B) != (x in C)):
break
Разбираем следующий фрагмент программы.
Шаг 5. Ответ
else:
best = min(best, a1 - a0)
print(best)
Печатаем ответ: 28.