Логотип сайта

Подготовка к ЕГЭ и ОГЭ

  • Главная
  • Информация о сайте
  • Сочинения ЕГЭ
  • Выпускное сочинение
  • Поиск по сайту

На рисунке изображена схема дорог N-ского района. В таблице...

Категория: Информатика и ИКТ

Задание:

На рисунке изображена схема дорог N-ского района. В таблице звёздочкой обозначено наличие дороги из одного населённого пункта в другой. Отсутствие звёздочки означает, что такой дороги нет.

Каждому населённому пункту на схеме соответствует номер в таблице, но неизвестно, какой именно номер. Определите, какие номера в таблице могут соответствовать населённым пунктам E и F на схеме. В ответе запишите эти два номера в возрастающем порядке без пробелов и знаков препинания.

Решение (аналитическое)

Заметим, что граф симметричный. Ось симметрии можно провести следующим образом

Населенные пункты E и F расположены относительно симметрично относительно проведенной оси. Начнем восстанавливать вершины парами. Вершины A и B имеют степень 2 (пункты 2 и 6), с ними связаны С со степенью 6 (пункт 1) и D/G со степенью 3 (пункты 4 и 7). Оставшаяся пара вершин соответствует пунктам 3 и 5.

Ответ: 35

Решение (программное - python)

# зададим граф, как наборы вершин и смежных с ними вершин
# ACG – вершина A и смежные с ней C и G
b_str = 'ACG BDC CABDEFG DBCE ECDF FCEG GACF'
# зададим таблицу аналогичным способом
# 217 – пункт 2 и смежные с ним 1 и 7
d_str = '1234567 217 3157 4156 5134 614 7123'
# записываем информацию о графе в словарь
# вершина: смежные вершины
b_graph = {w[0]: set(w[1:]) for w in b_str.split()}
from itertools import permutations
# определяем все вершины
letters = 'ABCDEFG'
print(letters)

# перебираем все перестановки номеров
for perm in permutations('1234567'):
    # преобразуем цифровое представление в буквенное
    new_dstr = d_str
    # заменяя цифры на буквы (первую на 1, вторую на 2 ...)
    for old_d, new_b in zip(perm, letters):
        new_dstr = new_dstr.replace(old_d, new_b)
        # формируем словарь для измененной строки
        new_graph = {w[0]: set(w[1:]) for w in new_dstr.split()}
        # если совпадает с начальным словарем с буквами
        if new_graph == b_graph:
            # выводим перестановку
            print(''.join(perm)) 

Программа выводит следующие строки:

ABCDEFG
2614537
6217354 

Заметим, что вершинам E и F соответствуют пункты 3 и 5 (либо 5 и 3).

Ответ: 35

Источник: Информатика с Джобсом | ЕГЭ

Похожие материалы
  • Определите, по какой из масок.. Подготовка к ЕГЭ (ИКТ)
  • Сколько единиц в двоичной записи десятичного числа 514?
  • Чем отличается позиционная система счисления..
  • Подготовка к ЕГЭ по информатике. Основы логики.
  • Сколько единиц в двоичной записи?
  • Напишите программу, печатающую значение EOF (Си)
  • А – множество четных чисел, В – множество двузначных чисел, С...
  • 1
  • 2
  • 3
  • 4
  • 5
Оценка: 5.0 из 1

💬 Чат ЕГЭ В Telegram. Вступить

Copyright Vopvet.Ru © 2025 Хостинг от uWeb