Skip to content

An algorithm to solve the "Treasure Maze" problem. Navigate a maze, collect all treasures, and reach the exit with the minimum number of steps.

License

Notifications You must be signed in to change notification settings

yataknemogy/treasureMazeSolver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Решатель Лабиринта с Сокровищами

RU | EN | FR | JP | DE | CH | KR

Этот репозиторий содержит алгоритм для решения задачи "Лабиринт с сокровищами". Дан лабиринт, представленный в виде двумерного массива, где каждая ячейка может быть пустой (0), содержать стену (1) или сокровище (S). Цель состоит в том, чтобы собрать все сокровища и добраться до выхода с минимальным количеством шагов.

Условие Задачи

Вам предоставляется карта лабиринта, где:

  • 0 обозначает пустую ячейку,
  • 1 обозначает стену,
  • S обозначает сокровище.

Вход в лабиринт находится в верхнем левом углу (0,0), а выход - в нижнем правом углу (N-1, M-1).

Задачи

  1. Разработать алгоритм для поиска кратчайшего пути, который позволит собрать все сокровища и дойти до выхода.
  2. Определить временную сложность вашего алгоритма.
  3. (Опционально) Модифицировать алгоритм для возврата пути через лабиринт в виде строки, например, "RRDDLU" (где R = вправо, D = вниз, L = влево, U = вверх).

Пример

Рассмотрим следующий лабиринт:

[ [0, S, 1, 0], [0, 0, 1, S], [1, 0, 0, 0], [0, 1, S, 0] ]

Использование

Клонируйте репозиторий и запустите файл TreasureMaze.java находящийся в папке src с данными лабиринта в качестве входных данных.

Лицензия

Этот проект лицензируется по лицензии MIT - подробности см. в файле LICENSE.

About

An algorithm to solve the "Treasure Maze" problem. Navigate a maze, collect all treasures, and reach the exit with the minimum number of steps.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages