uForum.uz

uForum.uz (https://uforum.uz/index.php)
-   Разминка для мозгов (https://uforum.uz/forumdisplay.php?f=470)
-   -   Мельница на Компоте (https://uforum.uz/showthread.php?t=15016)

Evgeniy Sklyarevskiy 04.03.2011 17:32

Мельница на Компоте
 
На этой мельнице стоят 3 жернова, производительность которых отличается друг от друга. Так, на первом из них за одни сутки можно смолоть 60 четвертей зерна, на втором 54 четверти и на третьем 48 четвертей. Не было печали, но тут пришел человек, которому надо было смолоть 81 четверть зерна за как можно более короткое время на этих трех жерновах. Отсюда вопрос: «За какое наименьшее время можно смолоть зерно и сколько для этого на каждый жернов надо насыпать зерна?».

Nadir Zaitov 04.03.2011 19:26

Зазача сводится к следующему:

http://latex.codecogs.com/gif.latex?...ght \} \to min

при x + y + z = 81

Очевидно, что такой максимум достигается, если x/60, y/54, z/48 равны между собой, или имеем:

http://latex.codecogs.com/gif.latex?...matrix}\right.

складываем последние 3 равенства и получаем:

162t = 81

t=1/2

x= 30
y= 27
z = 24
Оффтоп:
Шухрат, получилось и уменя воспопользоваться codecogs-ом?

Evgeniy Sklyarevskiy 04.03.2011 22:45

Собственно говоря задача арифметическая: сложив суточные скорости получим 162, значит все жернова должны работать по половине суток.

Но! Есть подозрение, что если часть зерна от медленного жернова передать быстрому, то время можно сократить. Но никак не могу формализовать эту мысль. Что думаете?

JH 04.03.2011 22:55

Цитата:

Сообщение от Evgeniy Sklyarevskiy (Сообщение 521651)
Но! Есть подозрение, что если часть зерна от медленного жернова передать быстрому, то время можно сократить. Но никак не могу формализовать эту мысль. Что думаете?

Смотрите под другим углом. Медленные жернова помогают быстрому, чтобы сократить время его работы.

Nadir Zaitov 05.03.2011 12:15

Цитата:

Сообщение от Evgeniy Sklyarevskiy (Сообщение 521651)
Но! Есть подозрение, что если часть зерна от медленного жернова передать быстрому, то время можно сократить. Но никак не могу формализовать эту мысль. Что думаете?

Ваша логика с "арифметической задачкой" подвела, ибо она дает только какое-то решение, но не доказывает его оптимальности.

Тут JH прав, ибо:
Цитата:

Сообщение от JH (Сообщение 521663)
Смотрите под другим углом. Медленные жернова помогают быстрому, чтобы сократить время его работы.

Я сформулировал своей гипотезой (заявив, что это очевидно), что:

Цитата:

Сообщение от Nadir Zaitov (Сообщение 521548)
такой максимум достигается, если x/60, y/54, z/48 равны между собой

Идея в том, что если три числа разные, то за счет увеличения меньших чисели и соответствующего уменьшения больших можно максимум уменьшить и получить минимум раньше.

Т.е в целом это работает так: (идея JH) "медленные жернова нужно загрузить в помощь быстрым жерновам", но (идея ЕС) "не дольше, чем задействованы быстрые жернова". Т.е. медленные задействовать нужно, так как быстрые заняты, а если быстрые свободны - ясен пень зачем молоть на медленных? Но раз быстрые заняты, то можно молоть и на медленных в помощь.

Оффтоп:

Кстати можно было решить задачу еще сложнее и использовать для этого линейное программирование. Тогда решение получилось бы тоже, длинным путем, но тогда вообще никакой смекалки и доказательства оптимальности не нужны были бы. Кто сформулирует задачу на языке линейного программирования?


Текущее время: 10:49. Часовой пояс GMT +5.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
OOO «Единый интегратор UZINFOCOM»