Главная страница
Навигация по странице:

  • Решение (1 вариант, подстановки)

  • Решение (2 вариант, удобная форма записи)

  • Возможные ловушки и проблемы

  • ььь. Графы. Поиск количества путей


    Скачать 1.47 Mb.
    НазваниеГрафы. Поиск количества путей
    Дата23.09.2022
    Размер1.47 Mb.
    Формат файлаdoc
    Имя файлаege13 (2).doc
    ТипДокументы
    #691944
    страница3 из 7
    1   2   3   4   5   6   7

    Еще пример задания:


    Р-00. На рисунке – схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, И, К. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой. Сколько существует различных путей из города А в город К?


    Е


    Решение (1 вариант, подстановки):

    1. начнем считать количество путей с конца маршрута – с города К

    2. будем обозначать через NX количество различных путей из города А в город X

    3. общее число путей обозначим через N

    4. по схеме видно, что NБ = NГ = 1

    5. очевидно, что если в город X можно приехать только из Y, Z, то NX = NY + N­Z, то есть нужно сложить число путей, ведущих из A во все города, откуда можно приехать в город X

    6. поскольку в K можно приехать из Е, Д, Ж или И, поэтому

    N = N­К = NД + NЕ + NЖ + NИ

    1. в город И можно приехать только из Д, поэтому NИ = NД

    2. в город Ж можно приехать только из Е и В, поэтому

    Ж = NЕ + NВ

    1. подставляем результаты пп. 6 и 7 в формулу п. 5:

    N = NВ + 2NЕ + 2NД

    1. в город Д можно приехать только из Б и В, поэтому

    Д = NБ + NВ

    так что

    N = 2NБ + 3NВ + 2NЕ

    1. в город Е можно приехать только из Г, поэтому N­Е = NГ так что

    N = 2NБ + 3NВ + 2NГ

    1. по схеме видно, что NБ = NГ = 1, кроме того, NВ = 1 + N­Б + NГ = 3

    2. окончательно N = 2NБ + 3NВ + 2NГ = 2·1 + 3·3 + 2·1 = 13

    3. Ответ: 13.

    Решение (2 вариант, удобная форма записи):

    1. начнем считать количество путей с конца маршрута – с города К

    2. з аписываем для каждой вершины, из каких вершин можно в нее попасть

    К  ИДЖЕ

    И  Д

    Ж  ВЕ

    Е  Г

    Д  БВ

    Г  А

    В  АБГ

    Б  А

    1. теперь для удобства «обратного хода» вершины можно отсортировать так1, чтобы сначала шли все вершины, в которые можно доехать только из начальной точки А:

    Б  А

    Г  А

    затем на каждом шаге добавляем те вершины, в которые можно доехать из уже добавленных в список (и из исходной точки):

    В  АБГ

    Е  Г

    далее добавляем все вершины, куда можно доехать из А, Б, Г, В и Е:

    Д  БВ

    Ж  ВЕ

    на следующем шаге добавляем вершину И

    И  Д

    и, наконец, конечную. вершину

    К  ИДЖЕ

    именно в таком порядке мы и будем вычислять количество путей для каждой вершины

    1. теперь идем по полученному списку вершин, полагая, что количество вариантов попасть в вершину равно суммарному количеству вариантов попасть в ее непосредственных предшественников.

    NБ = 1, NГ = 1

    NВ = 1+1+1 = 3, NЕ = 1

    NД = 1+3 = 4, NЖ = 3 + 1 = 4

    NИ = 4,

    N = NК = 4 + 4 + 4 + 1 = 13

    1. заметим, что вершины можно и не сортировать специально, а просто выбирать возможный порядок вычисления: проверять, какие значения известны и какие можно рассчитать с их помощью на следующем шаге

    2. Ответ: 13.

    Возможные ловушки и проблемы:

      • очень важна аккуратность и последовательность; сначала идем от конечной точки к начальной, выписывая все вершины, из которых можно приехать в данную; затем идем обратно, определяя числовые значения

      • построение полного дерева маршрутов – занятие трудоемкое и достаточно бесперспективное, даже грамотные учителя информатики здесь в большинстве случаев что-то забывают и ошибаются
    1   2   3   4   5   6   7


    написать администратору сайта