Как найти количество способов сделать ожерелье длиной n, используя 5 цветов и некоторые условия по размещению цветов?C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Гость
 Как найти количество способов сделать ожерелье длиной n, используя 5 цветов и некоторые условия по размещению цветов?

Сообщение Гость »


Я записал полное условие проблемы, я получил очень плохое решение, которое превышает ограничение по времени примерно на 5 секунд для n = 18. Я хочу получить хотя бы объяснение лучшего решения, если не сам код .
Ожерелье из n (nε N*) белых, красных, желтых, зеленых и черных бусин можно построить, следуя
следующим правилам:

1)не располагаем две бисерины одного цвета в последовательных позициях;

2)белые бисеринки не располагаем рядом с желтыми, а зеленые — с черными. ;

3)больше n/2 красных бисерин используем не более.
Задание. Разработать программу для определения количества возможностей изготовления ожерелья из n
бусин, удовлетворяющих указанным условиям.
Входные данные: задано число n, обозначающее количество бусин.
Входные данные: задано число n, обозначающее количество бусин.
p>
Выходные данные: будут содержать натуральное число возможностей изготовления ожерелий.
Ограничения:

2

Источник: https://stackoverflow.com/questions/781 ... -colors-an
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»