Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.09.2018, 13:02   #11
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

Цитата:
Но такой финт работает если ведер много. А если мы ограничены в их количестве? В этом и интересность... )))
нас почти что не интересует из скольких бочек мы будем очевидно что доливать ведра до полных.
Цитата:
если разливать бочкИ по разным ведрам до наполнения то по сути нам все равно сколько бочек мы будем делить, главное что учитывается на сколько ведер мы ее разделим.
но интересно и важно сколько будет таких ведер.
вроде как столько сколько мы не долили. Но в некоторые последние нам нечего будет наливать.
сортируем неполные ведра по убыванию свободного места. (чем больше мы нальем, тем меньше нам останется делить) и вперед до полного (а меньше нет никакого резона)
P.S. исключение ЕСЛИ мы можем бочку разлить без остатка (а может и правило)
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 25.09.2018 в 13:07.
evg_m вне форума Ответить с цитированием
Старый 25.09.2018, 13:52   #12
Llirik
Пользователь
 
Регистрация: 17.05.2007
Сообщений: 15
По умолчанию

Так я же написал, что второе (не обязательное по-Вашему) условие отсекает бесконечное множество решений. Добавив это условие получаем КОНЕЧНОЕ множество верных решений.
Llirik вне форума Ответить с цитированием
Старый 25.09.2018, 13:59   #13
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Цитата:
необходимо каждое текущее ведро заливать максимально возможно
Как это условие может толковать программа? Пока хватает воды - наливай ведро доверху.

Если что-то другое, то нужно внятное объяснение. Объяснение типа не наливай 0.98 литра, а наливай 1 литр не подходит
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 25.09.2018, 14:08   #14
Llirik
Пользователь
 
Регистрация: 17.05.2007
Сообщений: 15
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Как это условие может толковать программа? Пока хватает воды - наливай ведро доверху.
Необходимо МИНИМАЛЬНОЕ количество переливаний!
Если для "наливать доверху" потребуется лишние операции переливания - то это неверное решение.

Например, две бочки 8 и 9 литров. А ведер 3.
Решение единственное: в первое ведро вылить воду из 9-тилитровой бочки, а во второе из 8-милитровой. третье ведро остается пустым. Всего 2 переливания.

Если пытаться "наливать доверху" то потребуется 3 переливания, а это уже неверно...
Llirik вне форума Ответить с цитированием
Старый 25.09.2018, 14:11   #15
Llirik
Пользователь
 
Регистрация: 17.05.2007
Сообщений: 15
По умолчанию

Цитата:
Сообщение от evg_m Посмотреть сообщение
очевидно что доливать ведра до полных
Не обязательно 100% заполнение.

В условиях "максимально возможное заполнение" трактовать не "заполнять полностью", а как ВОЗМОЖНОЕ при минимальном количестве операций перелива.
Llirik вне форума Ответить с цитированием
Старый 25.09.2018, 14:25   #16
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Ладно, проехали. Так условия не ставятся, с таким ТЗ, допускающим неоднозначное толкование, за задачу браться не стоит )
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 25.09.2018, 14:30   #17
Llirik
Пользователь
 
Регистрация: 17.05.2007
Сообщений: 15
По умолчанию

Условия вполне корректные. Если ничего от себя не додумывать...
Но если что, то не сложно и на уточняющие вопросы ответить...
Llirik вне форума Ответить с цитированием
Старый 25.09.2018, 23:01   #18
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,304
По умолчанию

evg_m
Цитата:
Да вот оставленное неполным ведро начинает ограничивать всю дальнейшую работу
И как это ограничение работает?
Пусть у нас есть две бочки по по 7 и 3 литра и 7 вёдер.
Берём по одному литру в каждое ведро.
Мы не использовали всю воду, но по условию задачи этого и не требуется.
Неясно как быть если появятся пустые вёдра ...

Задача поставлена некорректно.

Llirik
Цитата:
Условия вполне корректные. Если ничего от себя не додумывать...
Но если что, то не сложно и на уточняющие вопросы ответить...
Что значит не додумывать?
Ответьте, в какой части предложенный выше пример и его решение не соответствуют поставленным условиям.
PS: Почему условие наполняемости вёдер взято в круглые скобки.
Это домысел или условие задачи? Если условие, то изложите его отдельным предложением.
И так, приводим исправленное полное ТЗ.
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 25.09.2018, 23:47   #19
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Цитата:
Сообщение от Llirik Посмотреть сообщение
Если пытаться "наливать доверху" то потребуется 3 переливания, а это уже неверно...
Посмотрите внимательно на пример 2.
Black Fregat вне форума Ответить с цитированием
Старый 26.09.2018, 00:34   #20
Llirik
Пользователь
 
Регистрация: 17.05.2007
Сообщений: 15
По умолчанию

Цитата:
Сообщение от ViktorR Посмотреть сообщение
Ответьте, в какой части предложенный выше пример и его решение не соответствуют поставленным условиям.
Всем условиям.
1) Достаточно 2 операций переливаний.
2) Есть возможность более полно заполнять ведра.
3) Вода не перелита (часть осталась в бочках)
Llirik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Интересная задачка Yeleo1 Помощь студентам 3 03.04.2015 20:59
Число фибоначчи. Двумерный массив, максимальное и минимальное число. Silverstone Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 02.12.2012 12:19
Интересная задачка stscolt Помощь студентам 1 29.04.2008 08:06