Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Алгоритмы
Курсы ККДП
Дистрибутивы
Ссылки

HotLog


 
Вернуться
Тема: Здравствуйте. Вопрос по задаче "Раскраска карты". У меня ошибка в 9-м тесте. Решал с использованием рекурсии.
1
  1  Жуков Александр И, 18 марта 2018 г. 14:29:01
      Спасибо, разобрался
  2  Меньшиков Фёдор Владимирович, 14 марта 2018 г. 12:18:40
      Ошибка - это wa или tle? У Вас подходящий цвет для вершины выбирается один раз из отсутствующих цветов в соседних вершинах? Или он всё-таки перебирается среди цветов, отсутствующих в соседних вершинах?
  3  Жуков Александр И, 14 марта 2018 г. 11:31:09
      Общая идея рекурсивной функции такая:
1. Выбираем подходящий цвет для вершины:
проходим по всем смежным и отмечаем какие цвета уже используются
если все цвета использованы, то
если x != 0, то выходим с результатом 0
иначе увеличиваем количество цветов и красим вершину в цвет M
2. Красим все смежные вершины графа - погружение в рекурсию
3. Если все смежные вершины покрашены успешно, то выход с результатом 1, иначе отменяем покраску

Эту рекурсивную функцию вызываем для каждой вершины по очереди, если она еще не окрашена (т.к. некоторые вершины в графе могут быть изолированы)
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2018, ICQ: 151483, E-mail: admin@acmp.ru