На рисунке справа схема дорог Н-ского района изображена в виде графа, звёздочка в ячейке таблицы обозначает наличие дороги между двумя пунктами. Так как таблицу и схему рисовали независимо друг от друга, то нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе.
| П1 | П2 | П3 | П4 | П5 | П6 | П7 | П8 | |
| П1 | * | * | * | |||||
| П2 | * | * | ||||||
| П3 | * | * | * | * | ||||
| П4 | * | * | * | |||||
| П5 | * | * | ||||||
| П6 | * | * | * | |||||
| П7 | * | * | * | |||||
| П8 | * | * |
Выпишите последовательно без пробелов и знаков препинания, указанные на графе буквенные обозначения пунктов от П1 до П8: сначала букву, соответствующую П1, затем букву, соответствующую П2, и т. д.
Сопоставим населённые пункты графа и населённые пункты в таблице. Из Г ведут четыре дороги. Таким образом, Г — П3. Тогда Б это пункт П2. Пункт А связан с Б и Г и это населенный пункт П4. Тогда пункт В это П5, а пункт И это населенный пункт П8. Пункт Е связан с В и Г и это пункт П6. Тогда Ж это пункт П1, а Д это населенный пункт П7. Запишем ответ без пробелов и знаков препинания, указанные на графе буквенные обозначения пунктов от П1 до П8: ЖБГАВЕДИ.
Ответ: ЖБГАВЕДИ.
Приведём решение на языке Python.
from itertools import permutations as p
sort = lambda x: dict([k,''.join(sorted(v))] for k, v in sorted(x.items()))
y = lambda x, c: {c[k]: ''.join(map(lambda d: c[d], v)) for k, v in x.items()}
sln = {'1': '678', '2': '34', '3': '2467', '4': '235', '5': '46', '6': '135',\
'7': '138', '8': '17'}
slb = sort({'А': 'БГВ', 'Б': 'АГ', 'Г': 'АБДЕ', 'Д': 'ГЖИ', 'И': 'ДЖ',\
'Ж': 'ДИЕ', 'Е': 'ЖГВ', 'В': 'АЕ'})
print([sort(c) for i in p('12345678') if (c:={k: v for k, v in zip(i,'АБГДИЖЕВ')}) and sort(y(sln,c))==slb][0]

