2013-03-18 3 views
0

У нас есть набор S потенциальных инвестиций, каждый из которых задается парой чисел с плавающей запятой (сумма, предполагаемый доход). Существует общая сумма A для инвестирования; мы хотим выбрать инвестиции для максимизации отдачи от этой суммы.У нас есть набор S потенциальных инвестиций

, пожалуйста, объясните, как я могу распорядиться инвестициями, используя коэффициент, предполагаемый доход/сумма, в nlogn. это использование быстрой сортировки? я могу рассчитать отношения в O (n), то как я могу сохранить индекс относительно того, какой коэффициент принадлежит инвестициям?

ответ

0

Разве это не Knapsack problem? Обычно такие проблемы решаются с помощью динамического программирования. В Интернете есть severalexamples, включая тему here on StackOverflow.

+0

Это вроде бы, но я думал, что мы можем использовать более простой алгоритм для этого, 1.старт, заказывая инвестиции в соответствии с коэффициентом уменьшения r/a 2.распределите имеющиеся деньги для инвестиций в таком порядке. То есть купите все первые инвестиции, затем используйте доступные деньги, чтобы купить вторую инвестицию, затем третью и т. д., пока не закончите деньги. – user2184292

+0

Я не могу понять, – user2184292