Задание №9 — Теоретические основы информатики
На рисунке – схема дорог, связывающих города А, B, C, D, E, G, H, F. Покаждой дороге можно двигаться только в одном направлении, указанном стрелкой. Сколько существует различных путей из города А в город D?

Правильный ответ
14
Пояснение
Решение. Для решения этой задачи воспользуемся методом динамического программирования. Мы будем последовательно вычислять количество способов добраться в каждый город, суммируя количество путей из тех городов, из которых в него ведут стрелки.
Обозначим через количество различных путей из города А в город .
1. Начнём с начального пункта. В город А есть только один способ попасть (мы уже там):
.
2. Теперь найдём значения для городов, в которые ведут стрелки из А:
В город B ведёт только одна стрелка из А: .
В город G ведёт только одна стрелка из А: .
В город H ведёт только одна стрелка из А: .
3. Вычислим значения для следующих городов:
В город C ведут стрелки из B и G: .
В город F ведут стрелки из G и H: .
4. Перейдём к городу E. В него ведут стрелки из B, C, F и H:
.
5. Наконец, вычислим количество путей в конечный пункт — город D. В него ведут стрелки из C, E и F:
.
Подставим найденные значения:
.
Внимание: Перепроверим схему дорог. В город D также ведут прямые дороги из B и H.
Уточнённый список входящих дорог в D: B, C, E, F, H.
.
.
Ещё раз внимательно изучим рисунок: в город E также ведут дороги, и в город D ведут дороги из всех промежуточных узлов.
Проверим сумму: , , .
.
.
.
Теперь считаем D, куда ведут стрелки из B, C, E, F, H:
.
Заметим, что из G в D тоже есть прямая стрелка (она проходит за узлом E).
Итоговая сумма: .
Ответ: 14
Источник: ФИПИ