longstreet, Вам обязательно решать задачу в Maple? Дело в том, что это очень неудобный инструмент для задач такого типа. Теория графов там ну очень слабая. Каждый раз, когда мне нужно сделать что-то похожее, я пишу обычный бинарный код (например, на Си) и выходит не просто быстрее по времени реализации, но и просто эффективнее по реализации.
Ну если очень нужно в Maple, то делайте в лоб: там есть циклы for и условия if, а также списки да векторы с матрицами. Больше ничего и не нужно.
Мне кажется, это будет быстрее, чем даже так:
клац. Там показано, как из матрицы сделать граф, а матрицы Вам всё равно придется строить руками или в цикле.