|
|
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Приветствую. Жена принесла с работы интересную задачу, для которой я не могу придумать быстрого эффективного решения. Помогите нам, пожалуйста: 1. Есть список из ~80 изданий (газет) с указанием городов, в которых они выходят, и стоимости рекламных блоков в них (как правило каждое издание выходит в 2-10 городах) 2. Есть список целевых городов (около 40), в которых необходимо обязательно подать рекламу Нужно найти варианты выборки изданий, покрывающих ВСЕ целевые города, упорядоченные по совокупной стоимости подачи рекламы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 17:37:22 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Задача, как я понимаю, чисто "на интерес", а не практическая? Точное решение, кажется, находится только перебором. Но есть кое-какие мысли по оптимизации: 1) проверить, нет ли таких городов, где выходит только одна газета, тогда можно удалить (пометить как "решённые") из списков эти города, эти газеты и другие города, которые они покрывают. 2) отсортировать газеты в списке по стоимости в расчете на один покрываемый город и перебор начинать с более дешевых газет. 3) города отсортировать по количеству выходящих в них газет, перебор начинать с менее "покрытых" городов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 18:14:20 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
miksoftЗадача, как я понимаю, чисто "на интерес", а не практическая? Точное решение, кажется, находится только перебором. Но есть кое-какие мысли по оптимизации: 1) проверить, нет ли таких городов, где выходит только одна газета, тогда можно удалить (пометить как "решённые") из списков эти города, эти газеты и другие города, которые они покрывают. 2) отсортировать газеты в списке по стоимости в расчете на один покрываемый город и перебор начинать с более дешевых газет. 3) города отсортировать по количеству выходящих в них газет, перебор начинать с менее "покрытых" городов. Я тоже думаю, что перебор здесь подойдёт. Или какой нибудь совершенно невероятный запрос-трюк. Вот по этому поводу у меня как раз созрел вопрос. А нужно ли искать в такой задачи методы оптимизации и тем более трюки? Её по-видимому запускает пользователь максимум раз в день. Ну так может пусть компьютер работает? Даже те чудесные оптимизации что Вы здесь написали не нужны... может? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 18:39:10 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
СомнениеДаже те чудесные оптимизации что Вы здесь написали не нужны... может?Только перебором без оптимизации нельзя. Если совсем тупо подходить к этой задаче, то получится 2 80 комбинаций, что слишком много даже для компьютера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 18:43:10 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
miksoft, Спасибо. Пойду думать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 18:49:18 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
miksoftЗадача, как я понимаю, чисто "на интерес", а не практическая? Задача как раз практическая, до этого ее решали "наугад", подбирая издания вручную и тратя уйму времени, ну и как следствие решения подбирались наверняка не самые оптимальные. Я решил помочь, зайдествовав компьютер ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 19:16:29 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Sergio Zhizhenko, Тираж, методы распространения, аудитория этих газет не учитывается? А стоимость рабочего времени сотрудника на контакт с ними? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 19:21:00 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
miksoftSergio Zhizhenko, Тираж, методы распространения, аудитория этих газет не учитывается? А стоимость рабочего времени сотрудника на контакт с ними? Вот, за это я люблю форумы. Кто-нибудь легко и походя посоветует подумать на тем над чем никто годами не задумывалася. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 20:02:10 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Если я не ошибаюсь, это классическая NP-полная задача. Точных решений кроме полного перебора (и его вариаций) ещё не найдено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 20:33:11 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Я все-таки склоняюсь, что это bin-pack модель, поскольку условие является определяющим, а упаковка статична. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 20:43:01 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Sergio Zhizhenko, Не осилил условие.. Не понятно в одном городе планируется размещать рекламу только в одном издании или возможно размещение рекламы в нескольких изданиях из множества доступных для этого города? И непонятно зачем может понадобится вывод всех возможных вариантов... В любом случае, если результатом работы алгоритма должны быть все возможные выборки газет - то тут только полный перебор. Если надо размещать рекламу только в одном издании для одного города, то в худшем случае ( когда каждая газета продается в каждом городе ) это всего навсего 80 * 40 = 3200 комбинаций. Составление массива вариантов покрытий в памяти и последующая его сортировка займут если не доли секунд, то секунды максимум на современном компе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 20:58:05 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
clihltSergio Zhizhenko, Не осилил условие.. Не понятно в одном городе планируется размещать рекламу только в одном издании или возможно размещение рекламы в нескольких изданиях из множества доступных для этого города? И непонятно зачем может понадобится вывод всех возможных вариантов... Главное - покрыть все города. Если в одном городе реклама будет в нескольких изданиях - не страшно (даже исходя из реалий другие варианты врядли возможны, пересечения все-равно будут) Все возможные варианты я хотел вывести, чтобы их уже вручную обработал оператор, поскольку помимо цены есть еще куча параметров влияющих на оптимальность подачи рекламы (например день выхода газеты и др.) Потому думал вывести варианты отсортировав по цене, а уже человек подберет возможно такой, за который стоит переплатить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 22:22:18 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Sergio Zhizhenko Главное - покрыть все города. Если в одном городе реклама будет в нескольких изданиях - не страшно (даже исходя из реалий другие варианты врядли возможны, пересечения все-равно будут) Все возможные варианты я хотел вывести, чтобы их уже вручную обработал оператор, поскольку помимо цены есть еще куча параметров влияющих на оптимальность подачи рекламы (например день выхода газеты и др.) Потому думал вывести варианты отсортировав по цене, а уже человек подберет возможно такой, за который стоит переплатить. Все возможные варианты считать слишком долго. А минимально подходящие -- быстро (по критерию уменьшения стоимости при удалении газеты из списка на каждой итерации). Если вы дадите мне исходные данные, я покажу, что выдаст моя свеженаписанная софтина. И решите, устроит вас такой подход или нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 22:28:38 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Ну и разумеется, дополнительные критерии оптимальности нужно выбирать ДО поиска решения, а не после. Потому что решений слишком много. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 22:34:34 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
капитан сикель спешит на помощь Все возможные варианты считать слишком долго. А минимально подходящие -- быстро (по критерию уменьшения стоимости при удалении газеты из списка на каждой итерации). Если вы дадите мне исходные данные, я покажу, что выдаст моя свеженаписанная софтина. И решите, устроит вас такой подход или нет. Исходные данные разместил в этом архиве . Сейчас вбиты не все издания (их там в файле 40 вместо 80) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 22:39:12 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Sergio Zhizhenko Сейчас вбиты не все издания (их там в файле 40 вместо 80) Ах, да, важное замечание: изданий-то там в файле много, но рассматривать нужно только те, в которых проставлены данные в колонки тираж и др. (таких как раз около 40) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 22:40:58 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Sergio Zhizhenko, По вашему списку нельзя построить удовлетворяющее решение. Ряд городов не присутствует в списке изданий с ценами (начиная с "Верея"). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 22:58:12 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Sergio Zhizhenko, Ну а по списку Код: plaintext 1. 2. 3. 4. 5. я получил Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 23:04:16 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
И, разумеется, это вовсе не полное и не точное решение задачи. А очень быстрое и очень приблизительное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 23:08:03 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Также весьма забавно, что решение отличается от запуска к запуску из-за случайного накопления коллекции изданий: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2010, 23:12:23 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Sergio Zhizhenko, Минимально повторяемое решение: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2010, 11:16:47 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
Sergio ZhizhenkoПриветствую. Жена принесла с работы интересную задачу, для которой я не могу придумать быстрого эффективного решения. Помогите нам, пожалуйста: 1. Есть список из ~80 изданий (газет) с указанием городов, в которых они выходят, и стоимости рекламных блоков в них (как правило каждое издание выходит в 2-10 городах) 2. Есть список целевых городов (около 40), в которых необходимо обязательно подать рекламу Нужно найти варианты выборки изданий, покрывающих ВСЕ целевые города, упорядоченные по совокупной стоимости подачи рекламы. что может быть проще! дано: map<key=газета, value= список городов>; список нужных городов; решение: 1)преобразовать в map<key = нужный город(40) , value=список газет города> 2)сделать список из 40-элементных сочетаний газет из value этой мапы 3)получившийся список упорядочить по общей стоимости ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2010, 17:01:02 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
как видно, среднее быстродействие зависит от количества газет, приходящихся в среднем на 1 город ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2010, 17:07:53 |
|
||
|
Задача про подачу рекламных объявлений
|
|||
|---|---|---|---|
|
#18+
ах дамы, господа, Или ты не понимаешь вычислительной сложности задачи, или одно из двух. Издание выходит в 2-10 городах. Всего 80 изданий. 40 городов. Посчитай количество допустимых комбинаций на досуге. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2010, 18:48:18 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=36697224&tid=1343607]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
209ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 533ms |

| 0 / 0 |
