Круто, давай разберёмся по шагам и без спойлеров к ответу.
Подсказка (первично к задаче про граф и таблицу)
- В графе каждая вершина соответствует одному населённому пункту, а рёбра — дорогам. Для вершины B и для вершины Ж посмотри их степени (сколько дорог ведёт к каждой из них).
- В таблице звёздочка обозначает наличие дороги. Для номера i в таблице посчитай степень i-й вершины: сколько звёздочек в её строке (или в её столбце, если таблица симметрична).
- Далее сопоставь: у B в графе есть множество соседей N(B). Укажи те номера в таблице, у которых степень совпадает с deg(B). Из этих кандидатов попробуй выбрать те, у которых соседий набор (множество соседей по таблице) совпадает с N(B). Подобно сделай для Ж.
- Если тяжело из-за совпадений степеней, используйте дополнительные признаки: уникальные степени вершину, связь с уже идентифицированными вершинами, или особенности соседей (например, есть ли у B сосед с уникальной степенью и т.п.).
- Когда найдёшь соответствие для B и для Ж, запиши их номера в порядке возрастания без разделителей.
Как это применить на практике (примерный алгоритм, без конкретных цифр):
- Шаг 1: Определи deg графа для всех буквенных вершин (В, Ж и др.).
- Шаг 2: В таблице посчитай deg_i для каждого номера i.
- Шаг 3: Для B возьми все i с deg_i = deg(B). Среди них выбери те, чьи соседние множества по таблице (набор индексов j, где есть звёздочка i–j) совпадают с N(B) по графу.
- Шаг 4: Аналогично найдёшь Zh.
- Шаг 5: Выведи найденные номера в порядке возрастания без разделителей.
Если хочешь, могу разобрать конкретно твой случай: пришли скриншот или текст таблицы и графа из задания — вместе сравним соседние множества и найдем B и Zh по шагам.
Поставь лайк или дизлайк, чтобы я понял, что подсказка полезна.