Обозначим через ДЕЛ(,
) утверждение «натуральное число
делится без остатка на натуральное число
».
На числовой прямой дан промежуток и множество
.
Определите максимальную длину промежутка , такого что его правая граница не больше
и выражение
def inn(x, A):
return A[0] <= x <= A[1]
def f(x, y, A):
S = {25, 28, 45, 48, 57, 67}
return (((x % 5 != 0) and (not y in S)) <= ((x > 5) <= (y > 13)))
or (x * y <= 67) or (not inn(x, A)) or (not inn(y, A))
n = 5
ans = 0
for a in range(1 * n, 50 * n):
for b in range(a, 50 * n + 1): # + 1 чтобы проверить саму точку b
A = [a / n, b / n]
flag = True
for x in range(1, 100):
for y in range(1, 15):
if not f(x, y, A):
flag = False
break
if not flag:
break
if flag:
ans = max(ans, A[1] - A[0])
print(ans)
Видим, что программа выдаёт результат 36.8 – это значит, что ответ стремится к 37.
Ответ: 37