Re: Оптимальное разбиение числа на сумму кубов
От: Mace Украина http://vhaydin.blogspot.com/
Дата: 04.02.08 09:59
Оценка:
Здравствуйте, UnderFelixAbove, Вы писали:

UFA>Господа всем привет. Столкнулся с проблемой, которая озвучена в названии темы. Погугля выяснил, что любое натуральное число(меня интересуют только числа до 2*10^9) можно разбить на сумму не более чем 9 кубов. Но здесь речь идет об оптимальном разбиении. Первое что пришло в голову, это реализовать жадный алгоритм. Но конечно он неэффективен. К примеру те же 2*10^9 он представляет в виде суммы 9 кубов, хотя можно представить в виде двух. Может кто нить знает как это делать? Буду благодарен на справочный материл по этой тематике


А что значит "оптимальное" разбиение? Минимальное количество кубов?
Кубический корень 2*10^9 ~ 1250, то есть тебе достаточно создать сортированый массив со всеми кубами от 0 до ~1250 и рекурсивно пройтись по нему. С отсеканием лишних вариантов должно работать очень быстро.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.