ФИПИ · ОГЭ · все форматы ответа · 1585 заданий
Тип задачи: Количество путей в графе.
| КЭС: | 2.11 Граф. Вершина, ребро, путь. Ориентированные и неориентированные графы. Длина (вес) ребра. Весовая матрица графа. Длина пути между вершинами графа. Поиск оптимального пути в графе. Начальная вершина (источник) и конечная вершина (сток) в ориентированном графе. Вычисление количества путей в направленном ациклическом графе |
| Тип ответа: | Краткий ответ |
Ответ: 16
1. Прочитаем направления дорог.
Нужно посчитать все пути из А в Л. Двигаться можно только по стрелкам. Пересечение линий без обозначенного города не создаёт развилку. Запишем все исходящие дороги с рисунка; каждая стрелка в списке обозначает одну дорогу:
А → Б, В, Г, Д.
Б → В, Е.
В → Е, З.
Г → Ж, З.
Д → Г, Ж.
Е → З, И.
Ж → З, К.
З → Л.
И → Л.
К → Л.
Из Л дорог дальше нет.
2. Обоснуем правило подсчёта.
Обозначим N(X) количество путей из А в город X. Для начального города полагаем N(А) = 1: это один способ начать маршрут, ещё не проходя дорог. В любой другой город можно попасть только по одной из входящих в него дорог. Разделим все пути по последней дороге. Эти группы не пересекаются, поэтому N(X) равно сумме N(Y) по всем городам Y с дорогой Y → X. На этой схеме нет направленных циклов. Считаем города в порядке, при котором все предшественники уже обработаны: А, Б, Д, В, Г, Е, Ж, З, И, К, Л.
3. Последовательно найдём число путей.
N(А) = 1.
N(Б) = N(А) = 1 = 1.
N(Д) = N(А) = 1 = 1.
N(В) = N(А) + N(Б) = 1 + 1 = 2.
N(Г) = N(А) + N(Д) = 1 + 1 = 2.
N(Е) = N(Б) + N(В) = 1 + 2 = 3.
N(Ж) = N(Г) + N(Д) = 2 + 1 = 3.
N(З) = N(В) + N(Г) + N(Е) + N(Ж) = 2 + 2 + 3 + 3 = 10.
N(И) = N(Е) = 3 = 3.
N(К) = N(Ж) = 3 = 3.
N(Л) = N(З) + N(И) + N(К) = 10 + 3 + 3 = 16.
В последней сумме учитываются все входы в конечный город, поэтому получено полное количество маршрутов: 16.
4. Проверка обратным подсчётом.
Теперь обозначим M(X) количество способов дойти из X до Л. В конечном городе M(Л) = 1. Для остальных городов складываем значения M у концов всех исходящих дорог, то есть разделяем пути по первой дороге. Обрабатываем города в обратном порядке:
M(Л) = 1.
M(К) = M(Л) = 1 = 1.
M(И) = M(Л) = 1 = 1.
M(З) = M(Л) = 1 = 1.
M(Ж) = M(З) + M(К) = 1 + 1 = 2.
M(Е) = M(З) + M(И) = 1 + 1 = 2.
M(Г) = M(Ж) + M(З) = 2 + 1 = 3.
M(В) = M(Е) + M(З) = 2 + 1 = 3.
M(Д) = M(Г) + M(Ж) = 3 + 2 = 5.
M(Б) = M(В) + M(Е) = 3 + 2 = 5.
M(А) = M(Б) + M(В) + M(Г) + M(Д) = 5 + 3 + 3 + 5 = 16.
Получили M(А) = N(Л) = 16. Подсчёты от начала и от конца совпали. Каждый маршрут учитывается ровно один раз в соответствующей группе; количество дорог вместо количества путей не подставляем.
Ответ: 16.
Напишите пожелание к сайту или решению либо сообщите о найденной неточности в задании OGEINFE3B49C.
Сообщение увидит только команда сайта: на странице оно не публикуется.
Комментарии к решению
Комментарии видны всем посетителям сайта.
Комментариев пока нет. Будьте первым.
Чтобы оставить комментарий, войдите или зарегистрируйтесь.