Сколькими способами можно раскрасить клетки прямоугольника 2*2019 в два цвета так чтобы никакие три клетки одного цвета не образовали уголок из трёх клеток ?

4 Авг 2019 в 19:42
177 +1
0
Ответы
1

Для решения этой задачи можно воспользоваться методом динамического программирования.

Обозначим через D(n) количество способов раскрасить прямоугольник 2* n таким образом, чтобы никакие три клетки одного цвета не образовывали уголок из трех клеток.

Для начала посчитаем значения функции для маленьких n:

D(1) = 2, так как мы можем покрасить первую строку в два разных цвета.
D(2) = 6, так как мы можем покрасить первую строку в 2*2=4 способами, а вторую строку уже однозначно.

Для дальнейших вычислений будем рассматривать два случая: первая строка имеет пять различных цветов и первая строка имеет четыре различных цвета.

Первая строка имеет пять различных цветов:

D(n) = 5 * D(n-1)

Первая строка имеет четыре различных цвета:

Два варианта продолжения:
а) Вторая строка имеет четыре различных цвета:

D(n) = 4 * D(n-1)

б) Вторая строка имеет пять различных цветов:

D(n) = 4 * D(n-1) + D(n-2)

Таким образом, можем написать программу на Python для вычисления D(2019) и найти ответ на задачу.

20 Апр в 15:13
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 89 343 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир