ПРИМЕЧАНИЕ: Это сложная проблема для тех, кто любит логические проблемы и т.д.Алгоритм: Определить форму двух секторов очерченных по произвольному пути, а затем заполнить один
Рассмотрим прямоугольную двумерную сетку высоты Н и шириной W. Каждое пространство в сетке имеет значение, либо 0
1
, либо 2
. Первоначально каждое место на сетке является 0
, за исключением пространств вдоль каждого из четырех ребер, изначально из которых 2
.
Затем рассмотрите произвольный путь соседних (по горизонтали или вертикали) пространств сетки. Путь начинается на 2
и заканчивается на другом 2
. Каждое пространство вдоль пути - 1
.
Путь делит сетку на два «сектора» 0
. Существует объект, который опирается на неуказанное пространство 0
. «Сектор», который НЕ содержит объект, должен быть полностью заполнен 2
.
Определить алгоритм, который определяет пробелы, которые должны стать 2
от 0
, данный массив (список) значений (0
, 1
или 2
), которые соответствуют значениям в сетке, идя сверху вниз, а затем слева направо. Другими словами, элемент с индексом 0 в массиве содержит значение верхнего левого пространства в сетке (изначально 2
). Элемент в индексе 1 содержит значение пространства в сетке, которое находится в левом столбце, второе сверху и т. Д. Элемент в индексе H содержит значение пространства в сетке, которое находится в верхней строке, а второе слева, и так далее.
После того, как алгоритм завершится, и пустой «сектор» заполнен полностью 2
s, алгоритм SAME должен быть достаточным, чтобы повторить тот же процесс. Второе (и время), путь по-прежнему оттягивается от 2
до другого 2
через пробелы 0
, но «сетка» меньше, потому что 2
s, которые окружены другими 2
с, не могут быть затронуты путем (так как путь проходит вдоль пространств 0
).
Я благодарю всех, кто может понять это для меня, очень много. Это не обязательно должно быть на определенном языке программирования; на самом деле достаточно псевдокода или просто английского. Еще раз спасибо! Если у вас есть какие-либо вопросы, просто оставьте комментарий, и я укажу, что нужно указать.
Большое вам спасибо! Я искал именно это, алгоритм заполнения флуда, и я понятия не имел, с чего начать. –
Добро пожаловать! :) – tzaman