Найти максимальное и минимальное значение от деления нацело?

Доброго времени суток!
Дано три неизвестных целых числа x, y и z.
Вам известны значения деления нацело r = z / x и l = z / y.
Каковы минимально и максимально возможное значение деления нацело y / x?
Как решить, подскажите?
  • Вопрос задан
  • 379 просмотров
Решения вопроса 1
@Mercury13
Программист на «си с крестами» и не только
UPD. Переписал с нуля.
r <= z/x < r + 1
l <= z/y < l + 1

Тогда y/x = z/x : z/y > r / (l+1)
С другой стороны: y/x < z/x : z/y < (r+1)/l

Пока вижу диапазон [r / (l+1)]; [(r+1)/l]
Второе — минус один, если точное целое: приблизиться-то можно, а достичь нельзя. Сымитируем это таким образом…
[r / (l+1)]; [r/l]

Покажем, что границы достижимы (например, первая). Она затрагивает два неравенства.
z/x < r + 1
z/y >= l
Подбором x, y и z можно довести второе до равенства и сколь угодно сильно приблизить первое.

UPD2. Пусть r = [z/x] = 10, l = [z/y] = 3
Тогда [y/x] будет в пределах от [10/4] = 2 до [10/3] = 3. А Если без целой части — то от 2,5 до 3 2/3.
z = 100.000, x=10.000, y=25.001, y/x = 2,5001
z = 100.000, x = 9091, y=33.333, y/x ≈ 3,66659
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
TomasHuk
@TomasHuk
Если я правильно понял вопрос, то r и l - тоже целые числа.
Поэтому, y=z/l и x=z/r.
В итоге y/x=(z/l)/(z/r)=r/l.
Ответ написан
MarkNikitin
@MarkNikitin
Интересуют инновации, инвестицияии и стартапы
Здесь нужно, как по мне использовать минимаксну функцию, а потом ее решить можно в математическом пакете matlab
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы