Проверьте, можно ли добраться до места назначения за четное количество шагов в бесконечной матрице.

Опубликовано: 22 Сентября, 2022

Учитывая источник и пункт назначения в матрице [][] бесконечных строк и столбцов, задача состоит в том, чтобы выяснить, можно ли добраться до пункта назначения из источника за четное количество шагов. Кроме того, вы можете двигаться только вверх , вниз , влево и вправо .

Примеры:

Input: Source = {2, 1}, Destination = {1, 4}
Output: Yes

Input: Source = {2, 2}, Destination = {1, 4}
Output: No

Наблюдение:

Наблюдение состоит в том, что если шаги, необходимые для достижения пункта назначения по кратчайшему пути, четны, то шаги, необходимые для достижения этого пункта назначения на любом другом пути, всегда будут четными . Кроме того, может быть бесконечное количество способов добраться до целевой точки. Некоторые пути достижения (4, 1) из (1, 2) в матрице 4 x 5 приведены ниже:

Таким образом, наша проблема сводится к нахождению минимального количества шагов, необходимых для достижения пункта назначения из источника в матрице, которую можно легко вычислить, просто взяв сумму абсолютных значений разницы между координатами X и координатами Y.

Ниже приведена реализация вышеуказанного подхода:

Временная сложность: O(1)
Вспомогательное пространство: O(1)