Идея создания программы для решения Word - PullRequest
0 голосов
/ 22 ноября 2011

Итак, я работаю над проблемой слов, и она выглядит примерно так:

!удаленный раздел

Я не публикую точный вопрос или диаграмму на тот случай, если кто-то не сможет помешать опубликовать прямой ответ.

Я пытаюсь написать программу на Java для этого, ноне могу понять, как это сделать логически.Я знаю, что могу начать с массива для каждого квадрата, как это:

int square1 = //four sides with each liquid value

, но я не знаю, как включить неограниченные (которые являются диагональными), или как продолжить, как только я это выясню,

Любая помощь с этой логикой программирования приветствуется.

1 Ответ

0 голосов
/ 22 ноября 2011

Я бы сказал, пройдите через каждую трубу и запишите максимальный проходящий через нее максимум, который должен быть наименьшим из его пропускной способности или суммы максимумов, входящих в нее. Тогда неограниченные просто берут общее количество, входящее в них (или, в самом начале, Integer.MAX_VALUE). Или вы можете использовать bool для отслеживания бесконечности. Или просто для удовольствия Double.POSITIVE_INFINITY.

Обратите внимание, что если в каналах есть какие-либо циклы, возможно, вам придется циклически проходить и обновлять пару раз, пока не получите устойчивый ответ.

Edit: После того, как я немного посмотрел на проблему максимального потока, связанную в комментарии, и подумал об этом, я не уверен, что это правильный путь, так как не думаю, что это объясняет разделение тока между двумя исходящие трубы. Возможно, какой-то дальний родственник закона Ома, приспособленный для воды?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...