![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 03.12.2008
Сообщений: 47
|
![]()
Есть бд в которой хранится записи мероприятий. У каждого мероприятия есть свой приоретет и его цена. Нужно выбрать набор мероприятий с высоким приорететом и сумма которых укладывается в заданную сумму.Нужна ваша помощь. Заранее спасибо!
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 03.12.2008
Сообщений: 47
|
![]()
СУБД - MS Access. SQL'ем умею пользоваться.. Вот только сам алгоритм перебора мне в голову не лезет\
|
![]() |
![]() |
![]() |
#4 | |
Форумчанин
Регистрация: 28.03.2008
Сообщений: 672
|
![]() Цитата:
sql-запрос будет наподобие этого... Код:
|
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 03.12.2008
Сообщений: 47
|
![]()
Вообщем есть 4 мероприятия:
1 - 20000 руб, Приоритет = 0.3 2 - 1000 руб, Приоритет = 0.3 3 - 1000 руб, Приоритет = 0.2 4 - 1000 руб, Приоритет = 0.2 Заданная сумма = 21000 руб По моему алгоритму программа скажет мол оптимально 1 и 2 мероприятие, а самом деле 2,3 и 4... Т.к сумма приоритетов будет больше и сумма затрат не больше 21000 руб.. Нужно исправить... подскажите алгоритм) Код:
Последний раз редактировалось Sanakan; 22.03.2010 в 21:18. |
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
![]() Тогда эта задача через SQL не решается... поищите, здесь на форуме был реализован алгоритм (если не ошибаюсь (с) LeBron ), который подбирал наиболее подходящую сумму, не превосходящую заданную величину. но, поверьте мне, задачка совсем не из простых (особенно, если учитывать ещё приоритет)... ;( |
|
![]() |
![]() |
![]() |
#7 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Ну вообще запрос может выглядеть так:
Код:
I'm learning to live...
|
![]() |
![]() |
![]() |
#8 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
допустим нужно набрать на сумму 10 (приоритет для простоты считаем одинаковый для всех мероприятий) цена мероприятий: 9 7 5 2 2 2 2 2 очевидно, что 5 двоек дадут оптимальное решение... это, как Вы понимаете, пример навскидку... |
|
![]() |
![]() |
![]() |
#9 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Ну разве что если автору нужно найоптимально...
I'm learning to live...
|
![]() |
![]() |
![]() |
#10 | |
Пользователь
Регистрация: 03.12.2008
Сообщений: 47
|
![]() Цитата:
Я думаю сделать список всевозможных наборов мер. которые < заданной суммы и выбрать с наивысоким приоритетом.. |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перебор значений | genf | Microsoft Office Excel | 0 | 18.12.2009 10:56 |
Перебор результатов | coirius | Помощь студентам | 3 | 12.12.2009 14:04 |
перебор записей | BredoZavR | БД в Delphi | 5 | 29.06.2009 17:25 |
Перебор с памятью | artemavd | Общие вопросы Delphi | 12 | 24.05.2009 06:48 |
перебор файлов | Ralf_ru | Общие вопросы Delphi | 11 | 31.03.2009 14:23 |