Хотел решать задачу чисто геометрически, но не сумел. Решил тогда применить численный метод перебора вариантов.
Идея такая: единичный квадрат помещен в начале координат и осуществляется пошаговое перемещение трех точек (направление перемещений показано стрелками). Шаг принял равным 0.01.
Радиус вписанной окружности - это отношение площади треугольника
к его полупериметру.
Стороны треугольник вычисляются легко:
Полупериметр
Радиус вписанной окружности
Программа простенькая:
Код:
r1=0:d=.01
for x=0 to 1 step d
for y=1 to 0 step -d
for x1=1 to 0 step -d
a=sqrt((1-y)^2+x1^2)
b=sqrt(1+(x1-x)^2)
c=sqrt(x^2+y^2)
p=(a+b+c)/2
r=sqrt((p-a)*(p-b)*(p-c)/p)
if r>=r1 then r1=r:x0=x:y0=y:x10=x1:fi
next x1
next y
next x
print x0,y0,x10,r1
Результат счета таков:
Это означает, что оптимальное решение такое:
где
Получается, что диаметр окружности - суть золотое сечение.
Интересно: на самом деле это так?