|
0 / 0 / 0
Регистрация: 17.02.2012
Сообщений: 4
|
|
помогите определить по какому алгоритму решить задачу17.02.2012, 18:51. Показов 967. Ответов 5
Метки нет (Все метки)
суть задачи состоит в том,что:
есть 4 поля размерами 120га,95га,110га,140га..мне требуется посадить 230га ячменя..по какому алгоритму решить эту задачу,чтобы ячмень занимал как можно меньше гектаров..соответственно все числа могут меняться,Я привела лишь пример Добавлено через 27 минут в данном примере это будет 140+95=235..то есть всего 5га лишних засадим ячменем
0
|
|
| 17.02.2012, 18:51 | |
|
Ответы с готовыми решениями:
5
Помогите решить задачу(Гражданин открыл счет в банке. Определить прирост и сумму вклада через определенное время)
|
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
||
| 17.02.2012, 23:43 | ||
|
Задача на ДП.
Могу написать код на с/с++. Могу просто алгоритм.
1
|
||
|
0 / 0 / 0
Регистрация: 17.02.2012
Сообщений: 4
|
|
| 18.02.2012, 10:28 [ТС] | |
|
да,количество полей можно выбирать,думаю 10-20 можно ограничиться смело,также можно задавать размер каждого поля(среднее поле 100га)..у каждой культуры есть своя прибыльность(есть прибыльные,есть не совем),также есть правила по которым засаживаются поля(каждая культура не может возвращаться N лет на одно поле,и после i-ой културы не может быть j-ая)..это что касается рассадки культур по полям..на выходе я хочу получить такую рассадку,при которой бы прибыльность была максимальна(пока в голове есть только вариант перебора,т.е. смотрим все поля на какие можно самую дорогую посадить,сажаем..потом дешевле и тд,но как то это не круто,хотелось бы что-нить универсальней) и плюс к этому должна быть возможность вводить ограничения,т.е. я хочу засадить обязательно 300га ячменя,150 кукурузы и при этом получить макс прибыль
программу хочу реализовать в делфи,поэтому думаю,что пока будет достаточно толлько алгоритма как оптимально засадить..идей нет особенно по той части,как N гектар оптимально разложить по нескольким полям,чтобы излишков было минимум,если поможете,то буду очень признательна)
0
|
|
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
|||||
| 18.02.2012, 11:54 | |||||
|
Но условие задачи вижу немного изменилось. Ладно, итак та часть которую обещал. Я на Вашем примере покажу: 1 2 3 4 5 6 7 ..... 465 <-индексы массива 0 0 0 0 0 0 0 ..... 0 <-начальные значения массива Затем такой алгоритм, перебираем числа 120, 95, 110, 140 (порядок перебора не важен) и с каждым числом делаем следующее: - проходим по массиву от элемента с индексом 465 до элемента с индексом 1, если встречаем элемент массива равный 1 (пусть индекс этого элемента равен i), то элемент с индексом i+(очередное выбранное число) делаем равным единице. По окончании прохода массива, элемент с индексом равным очередному выбранному числу делаем равным 1. Покажу вручную что будет получаться. Берем очередное число 120. Проходим по массиву, элементов равных 1 нет. По окончании прохода элемент с индексом 120 равен 1. 1 2 3 4 5 6 7 .. 120 ... 465 <-индексы массива 0 0 0 0 0 0 0 .. 1 ... 0 <-значения массива Далее берем число 95. Идем по масиву, встречаем элемент с индексом 120, делаем элемент с индексом 120+95 тоже равным 1. По окончании прохода делаем элемент с индеком 95 равным 1. 1 2 3 4 5 6 7 .. 95 .. 120 .. 215 .. 465 <-индексы массива 0 0 0 0 0 0 0 .. 1 .. 1 .. 1 .. 0 <-значения массива Далее берем число 110, идем по массиву, встречаем 215 (делаем элемент 215+110 равным 1), встречаем 120 (делаем элемент 120+110 равным 1), встречаем 95 (делаем элемент 95+110 равным 1). По окончании прохода элемент с индексом 110 тоже равен 1. 1 2 3 4 5 6 7 .. 95 .. 110 .. 120 .. 205 .. 215 .. 230 .. 325 .. 465 <-индексы массива 0 0 0 0 0 0 0 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 .. 0 <-значения массива Далее берем последнее число 140. В итоге массив получится такой: 1 2 .. 95 .. 110 .. 120 .. 140 .. 205 .. 215 .. 230 .. 235 .. 260 .. 325 .. 345 .. 355 .. 370.. 465 <-индексы массива 0 0 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 .. 1 <-значения массива Кстати получается, что: По окончании такого перебора всех чисел выбираем минимальное значение массива, равное 1 (от нужного значения и больше). В данном случае это 230. (Немного отвлекусь - все значения массива равные 1 - это все возможные варианты которые можно набрать) Теперь осталось вычислить поля которыми можно набрать эту сумму. Изначально имеем число 230. Пока это число не станет равным 0, делаем так: Перебираем все значения полей и если значение массива с индексом (наше число) - (значение очередного поля) равно 1, то значит это поле наше - отнимаем от (нашего числа) (значение этого поля) и продолжаем дальше. Вот что получится: имеем 230. 230-120=110 (элемент массива с индексом 110 равен 1, поэтому это поле (120га) наше). 230-120=110 (теперь наше число 110). Имеем 110. Перебирая числа найдем, что 110-110=0 (это тоже наше поле).
2
|
|||||
|
0 / 0 / 0
Регистрация: 17.02.2012
Сообщений: 4
|
|
| 18.02.2012, 19:16 [ТС] | |
|
спасибо большое!!!сейчас буду опробывать,если что спрошу еще..еще раз огромное спасибо Вам)
0
|
|
|
0 / 0 / 0
Регистрация: 17.02.2012
Сообщений: 4
|
|
| 21.02.2012, 18:35 [ТС] | |
|
здравствуйте..подскажите пожалуйста какие мы еще методы используем при решении этой задачи..чтобы можно было их описать в математической части,пожалуйста!!
0
|
|
| 21.02.2012, 18:35 | |
|
Помогаю со студенческими работами здесь
6
Помогите решить задачу
ОУ. Помогите решить задачу Помогите решить задачу на C++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
YAFU@home — распределённые вычисления для математики. На CPU
Programma_Boinc 20.01.2026
YAFU@home — распределённые вычисления для математики. На CPU
YAFU@home — это BOINC-проект, который занимается факторизацией больших чисел и исследованием aliquot-последовательностей.
Звучит. . .
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам
Кирхгофа, решает её и находит:
токи, напряжения и их 1 и 2 производные при t = 0;. . .
|
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|