Обозначим через ДЕЛ(,
) утверждение «число
делится без остатка на число
». Для дробных чисел это означает, что результатом деления
на
является целое число.
На числовой прямой даны отрезки ,
. Найдите максимальную длину промежутка
, такого что выражение
тождественно истинно, то есть принимает значение при любом натуральном числе
.
def inn(x, A):
return A[0] <= x <= A[1]
def f(x, A):
P = [13, 25]
Q = [18, 35]
return (((x % 5.5 != 0) and (x % 4 != 0) or (not inn(x, Q))
or (not inn(x, A))) and (inn(x, P) or (not inn(x, A))))
ans, n = 0, 15
borders = [0 ,0]
for a in range(1 * n, 70 * n):
for b in range(a, 70 * n):
A = [a / n, b / n]
flag = True
for x in range(1, 70 * n): # только натуральные
if not f(x, A):
flag = False
break
if flag:
if A[1] - A[0] > ans:
ans = A[1] - A[0]
borders[0] = A[0]
borders[1] = A[1]
print(borders)
print(ans)
Видим, что программа вывела промежуток и его длину
.
Значит, ответом является промежуток с дробными границами, левая граница которого стремится к , а правая к
, тогда длина стремится к
.
Ответ: 8