Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Bernuar
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 19
#1

Генерирование ожерелья - C++

09.11.2011, 04:42. Просмотров 554. Ответов 3
Метки нет (Все метки)

Здравствуйте. Вот задали такую задачку на C++. Так-то все сделал осталась только эта. На PASCAL я еще представляю как делать, а на С нет. Прошу помощи.
Круглое ожерелье состоит из N жемчужин. Каждая жемчужина либо черного, либо белого цвета. Получите все возможные варианты ожерелий, которые можно составить из N жемчужин. Требуется написать программу для решения поставленной задачи.
Примечание: Ожерелья являются замкнутыми. Это означает, например, что два ожерелья, состоящие из четырех жемчужин: белая-белая-белая-черная и белая-черная-белая-белая являются одинаковыми, а ожерелья: белая-черная-черная-белая и белая-черная-белая-черная - различны.
Формат входных данных: входной файл INP.TXT содержит единственное целое число N( 1<=N<20).
Формат выходных данных: первая строка выходного файла OUT.TXT должна содержать количество полученных ожерелий. Во всех остальных строках выходного файла должно содержаться по одному ожерелью. Ожерелье представляется в виде строки символов "Б" и "Ч", что соответствует белой и черной жемчужине. Пробелы в строке не ставятся.
P/S если конечно можно, приведите пожалуйста примеры с других языков.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.11.2011, 04:42     Генерирование ожерелья
Посмотрите здесь:

Определить иерархию драгоценных и полудрагоценных камней. Отобрать камни для ожерелья Java SE
PHP БД генерирование страницы
QBasic Соберите все возможные варианты ожерелья
Генератор ожерелья C++ Builder
Динамическое генерирование классов C++
Генерирование особых графов C++
Генерирование числа Python
C++ Генерирование случайных чисел и выборка значения из этих чисел
Генерирование размещений C++
C++ Rand(), генерирование случайных чисел в заданном интервале
Генерирование сборок C#
Генерирование точек на поверхностях простых 3D объектов C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
diagon
Higher
 Аватар для diagon
1921 / 1187 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
09.11.2011, 07:25     Генерирование ожерелья #2
http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{(n - 1)!}{2} вроде.
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
09.11.2011, 09:06     Генерирование ожерелья #3
Цитата Сообщение от diagon Посмотреть сообщение
n!/2 вроде.
Ему нужны сами варианты, а не сосчитать их по номеру. Для проверки совпадений пробуй N-1 цикилических сдвигов одного ожерелья на одну жемчужину в одну и ту же строну, после каждого сдвига проверяй на полное совпадение. Если хотя бы одна проверка выдала true, то ожерелья одинаковы, иначе различны. А сама генерация - цикл со счётчиком от ноля до максимально представимого беззнакового целого и явный перевод этого счётчика в двоичную систему, сброшенный бит означает один цвет, установленный - другой.
Bernuar
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 19
09.11.2011, 20:10  [ТС]     Генерирование ожерелья #4
Помогите мне сейчас пожалуйста, а я обязательно заполню эту брешь в моих знаниях. Даю слово! Тем более, я самоучка. Нам сказали, учите, то что дают. Я не хочу, (изучаем мы сейчас Pascal) и я начал изучать C++, конечно я знаю пока мало, но это только начало!
Спасибо!
Yandex
Объявления
09.11.2011, 20:10     Генерирование ожерелья
Ответ Создать тему
Опции темы

Текущее время: 00:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru