На рисунке слева изображена схема дорог Н-ского района, в таблице звёздочкой обозначено наличие дороги из одного населённого пункта в другой. Отсутствие звёздочки означает, что такой дороги нет.
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | |
| 1 | * | * | * | ||||
| 2 | * | * | * | ||||
| 3 | * | * | * | * | * | * | |
| 4 | * | * | |||||
| 5 | * | * | |||||
| 6 | * | * | * | ||||
| 7 | * | * | * |
Каждому населённому пункту на схеме соответствует его номер в таблице, но неизвестно, какой именно номер. Определите, какие номера населённых пунктов в таблице могут соответствовать населённым пунктам A и G на схеме. В ответе запишите эти два номера в возрастающем порядке без пробелов и знаков препинания.
Сопоставим населённые пункты графа и населённые пункты в таблице. Необходимо определить номера населенных пунктов A и G. Из F ведут шесть дорог. Таким образом, F — 3. Заметим, что из пунктов A и G нет дороги в населённые пункты C и E, из которых идут 2 дороги. Следовательно, пункты
Ответ: 67.
Приведём решение Артёма Гридина на языке Python.
from itertools import permutations
table = '347 356 124567 13 23 237 126'.split()
graph = 'FC FD FG FE FB FA CD DG GA AB BE'.split()
print('1 2 3 4 5 6 7')
for p in permutations('ABCDEFG'):
if all(str(p.index(c2)+1) in table[p.index(c1)] for c1, c2 in graph):
print(*p)
break

