(И. Карпачев) На рисунке справа схема дорог Н-ского района изображена в виде графа, звёздочка в ячейке таблицы обозначает наличие дороги между двумя пунктами. Так как таблицу и схему рисовали независимо друг от друга, то нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе.
|
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Определите минимальную из протяжённостей дорог из пункта Д в пункт А и из пункта Г в пункт Е. Передвигаться можно только по указанным дорогам.
Решение:
Python
from itertools import permutations
graph = {'А': set('БВДЖ'), 'Б': set('АГ'), 'В': set('АГЕ'), 'Г': set('БВЕЖ'),
'Д': set('АЕЖ'), 'Е': set('ВГД'), 'Ж': set('АГД')}
table = {1: [2, 5, 6], 2: [1, 3, 6], 3: [2, 4, 5, 7], 4: [3, 6],
5: [1, 3, 7], 6: [1, 2, 4, 7], 7: [3, 5, 6]}
for p in permutations('АБВГДЕЖ'):
tmp = {p[k-1]: set(p[x-1] for x in v) for k, v in table.items()}
if tmp == graph:
print('1 2 3 4 5 6 7')
print(*p)
Вывод программы
1 2 3 4 5 6 7 Д Ж Г Б Е А В 1 2 3 4 5 6 7 Е В А Б Д Г Ж
В первом случае АД=51, ГЕ=49, во втором случае АД=49, ГЕ=51. И в том и в другом случае минимальная протяжённость из двух дорог — 49.
Ответ: \(49\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене