Приветствую. Попробуй вбей в любом поиске что-нибудь типа "нахождение наименьшего пути в графе"
Или посмотри тоже в поиске (обычно это дискретная математика, тема третьего раздела) Теория графов.
Но чтобы ты не искал, всё что у меня есть по дискретке ( полный курс ) я скинул тебе в архив, там ищи разбирайся.
Есть еще пару программ, для нахождения кратчайшего пути в графе и для нахождения минимального доминируещего подмножества графа, но если это понадобится, это отдельная тема.