Этот репозиторий был создан для участия в хакатоне и представляет собой набор алгоритмов для обхода взвешенного графа из планет и загрузки трюма космического корабля мусором в виде фигур из тетриса. Алгоритм оптимизирует процесс заполнения трюма (размером 8x11) мусором, обнаруженным на орбитах различных планет, и его доставку на планету Eden.
- Пусто (цифра - 0)
- До дозагрузки трюма (цифра - 1)
- После дозагрузки трюма (цифра - 2)
Shortest path fuel: 43
Path:
Barton-122 -> Stanton-232 (fuel: 43)
█ █
█ █ █ █
█ █ █ █ █ █ █
█ █ █ █ █ █ █
█ █ █ █ █
█
0 0 0 2 2 1 2 2
2 2 1 2 1 1 1 0
1 2 1 1 1 1 1 1
1 1 1 1 1 1 1 0
2 2 0 1 1 1 1 1
2 2 2 1 2 2 2 2
2 2 2 2 2 2 2 2
2 2 0 2 2 2 0 2
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 0
2 2 2 2 2 0 2 2
█ █ █ █ █
█ █ █ █ █ █ █
█ █ █ █ █ █ █ █
█ █ █ █ █ █ █
█ █ █ █ █ █ █
█ █ █ █ █ █ █ █
█ █ █ █ █ █ █ █
█ █ █ █ █ █
█ █ █ █ █ █ █ █
█ █ █ █ █ █ █
█ █ █ █ █ █ █
{6fVUPmq=[[0, 0], [1, 0], [2, 0], [0, 1], [2, 1], [3, 1], [0, 2], [2, 2], [0, 3], [1, 3]], 6fVUQEL=[[0, 0], [0, 1], [1, 1], [1, 2], [1, 3]], 6fVUjUs=[[0, 3], [0, 2], [0, 1], [0, 0], [1, 2], [2, 2], [2, 1]], 6fVUjwN=[[0, 0], [0, 1], [1, 1], [2, 1], [3, 1], [0, 2], [3, 2], [0, 3], [1, 3], [2, 3]], 6fVVQkT=[[0, 0], [1, 0], [2, 0], [0, 1], [2, 1], [3, 1], [0, 2], [3, 2]], 6fVVkPF=[[0, 0], [1, 0], [1, 1], [2, 1], [3, 1], [1, 2], [1, 3], [2, 3]], 6fVW5ZY=[[0, 3], [0, 2], [1, 2], [1, 1], [1, 0], [2, 1], [3, 1]], 6fVWQjq=[[0, 2], [0, 1], [0, 0], [1, 2], [2, 2], [2, 1], [2, 0], [3, 2], [3, 0]], 6fVWRCL=[[0, 3], [0, 2], [0, 1], [1, 3], [1, 1], [2, 3], [2, 1], [2, 0]], 6fVWkSs=[[0, 0], [0, 1], [1, 1], [2, 1], [0, 2]], 6fVX5dA=[[0, 3], [1, 3], [1, 2], [2, 2], [3, 2], [3, 1], [3, 0]], 6fWx3iz=[[0, 3], [0, 2], [0, 1], [1, 3], [1, 1], [1, 0], [2, 3], [3, 3]], 6fWx4BV=[[0, 3], [0, 2], [0, 1], [0, 0], [1, 2], [2, 2], [2, 1], [3, 1]], 6fWxPMn=[[0, 2], [0, 1], [1, 1], [1, 0], [2, 1]], 6fWxiza=[[0, 0], [0, 1], [0, 2], [1, 2], [1, 3], [2, 3]], 6fWy4As=[[0, 0], [1, 0], [2, 0], [0, 1], [0, 2], [1, 2], [1, 3], [2, 3], [3, 3]], 6fWy4dN=[[0, 3], [0, 2], [0, 1], [0, 0], [1, 3], [1, 1], [2, 3], [2, 1], [2, 0], [3, 1]], 6fWyPsu=[[0, 3], [1, 3], [1, 2], [1, 1], [2, 3], [2, 1], [3, 1], [3, 0]], 6taZjTy=[[0, 0], [0, 1], [1, 1], [2, 1], [0, 2]], 6tc2iXo=[[0, 0], [1, 0], [2, 0], [1, 1], [1, 2], [2, 2]], 7Lhh4xw=[[0, 3], [0, 2], [0, 1], [1, 3], [1, 1], [1, 0], [2, 1]], 7Lkhizv=[[0, 2], [0, 1], [1, 2], [2, 2], [2, 1], [2, 0], [3, 2], [3, 0]], 7LkhjTR=[[0, 3], [0, 2], [0, 1], [1, 3], [1, 1], [1, 0], [2, 3], [2, 1], [3, 3], [3, 1]], 7Lki56D=[[0, 1], [0, 0], [1, 1], [2, 1]], 7Ln92jY=[[0, 3], [0, 2], [0, 1], [0, 0], [1, 3], [1, 0], [2, 3], [3, 3]], 7Ln9Muq=[[0, 0], [1, 0], [2, 0], [0, 1], [2, 1], [0, 2]], 7Ln9NNL=[[0, 0], [1, 0], [2, 0], [1, 1], [2, 1]], 7Ln9hcs=[[0, 1], [1, 1], [2, 1], [3, 1], [3, 0]], 7Ln9i5N=[[0, 0], [1, 0], [2, 0], [0, 1], [2, 1], [3, 1], [3, 2]], 7LnA3Ff=[[0, 3], [1, 3], [1, 2], [1, 1], [2, 1], [2, 0], [3, 1]], 7LnANRx=[[0, 0], [1, 0], [0, 1], [1, 1]], 7LnANtT=[[0, 3], [0, 2], [0, 1], [0, 0], [1, 3], [1, 1], [2, 3], [2, 1], [2, 0]], 7LnAi4k=[[0, 3], [0, 2], [0, 1], [0, 0], [1, 3], [2, 3], [2, 2], [2, 1], [2, 0], [3, 0]], 7LnAiXF=[[0, 3], [0, 2], [0, 1], [0, 0], [1, 2], [1, 0], [2, 2], [3, 2], [3, 1], [3, 0]], 7LnB3hY=[[0, 0], [1, 0], [2, 0], [2, 1], [3, 1]], 7LnBNsq=[[0, 0], [1, 0], [2, 0], [1, 1], [2, 1]], 7LnBPLL=[[0, 3], [0, 2], [0, 1], [0, 0], [1, 2], [2, 2]], 7LnBias=[[0, 3], [0, 2], [0, 1], [0, 0], [1, 2], [2, 2], [3, 2], [3, 1], [3, 0]], 7LnC3mA=[[0, 1], [0, 0], [1, 1], [2, 1]], 7LnC4Df=[[0, 0], [1, 0], [2, 0], [3, 0], [0, 1], [3, 1], [0, 2], [1, 2], [1, 3]], 7Lod1rz=[[0, 3], [0, 2], [0, 1], [1, 3], [1, 1], [2, 3], [2, 1], [2, 0]], 7Lod2KV=[[0, 2], [0, 1], [0, 0], [1, 1]], 7LodMVn=[[0, 0], [1, 0], [2, 0]], 7Lodgg5=[[0, 2], [1, 2], [1, 1], [1, 0], [2, 2], [2, 0], [3, 0]], 7Lodh8a=[[0, 0], [1, 0], [2, 0]], 7Loe2Js=[[0, 2], [1, 2], [1, 1], [1, 0], [2, 0]], 7Loe2mN=[[0, 0], [1, 0], [1, 1], [2, 1], [2, 2]], RWEiKd77=[[0, 3], [0, 2], [1, 3], [2, 3], [2, 2], [2, 1], [2, 0], [3, 2]]}
planet is not clear
Сертификат участника хакатона можно найти по следующей ссылке: Сертификат.
- Тиунчик Даниил - Разработчик алгоритма тетриса
- Ставров Владислав - Разработчик алгоритма обхода графа
riga/
├── src/
│ └── main/
│ └── java/
│ └── com/
│ └── belarus/
│ └── riga/
│ ├── classes/ - модели для взаимодействия с сервером
│ ├── client/ - классы для выполнения GET и POST запросов
│ ├── legacy/ - класс GraphVisualizer.java для визуализации графа
│ ├── scripts/ - скрипты для автономного взаимодействия с сервером игры
│ ├── templates/ - ApiClient.java с константами и методами запросов
│ └── tests/ - тесты алгоритма тетриса
└── json-files/ - сохраненные json данные для тестов
Папка legacy
содержит класс GraphVisualizer.java
, который полезен для визуализации графа. Однако при количестве планет более 20 становится нечитаемым.