Другие языки программирования и технологии

Вау, у меня есть вопрос =D . Часть знаю как решить а часть нет. Тогда задам подвопрос. Язык - C# C++ Pascal на выбор

Даётся на входе число N, означающее кол-во пар скобок "(" либо ")" . Нужно занести в строки все возможные варианты расположения этих скобок. Пример входа 2 Выход (((( ()() )()( )))) (()) (()( )((( ())( ))(( )()) чёрт и так далее )) Блин вот не знаю как точно на русском, все перестановки чтоли. Пардон своего кода нету т.к. нету понятия как делать. Наводку дайте может, не обязательно код.
Дмитрий Фокин
Дмитрий Фокин
1 025
Взять двоичное представление введенного числа, пройтись циклом от 0 до N
и расставлять скобки: 0 - например "(", а 1 - ")".
ВП
Володя Полянский
20 328
Лучший ответ
Дмитрий Фокин Спасибо конечно но это какойто полный баян. Да брать за 1 и 0 это согласен...Но вот причём тут двоичное представление входного числа..
преобразуй число в двоичное. Потом 0- (, 1 - ) все.
Но вообще то пара скобок это () , т. е это (((( или это математически не верно )()(, а так ()() или так (()) правильно
пиши в агент или icq 452371863 договаримся
Алексей Павлов
Алексей Павлов
68 014
То, как тут предлагают - не интересно =)
Вот рекурсивный вариант на c#

static System.Collections.Generic.List<string> a = new System.Collections.Generic.List<string> ();
static void iter (string acc, int counter)
{
string s1, s2;
s1 = acc + '(';
s2 = acc + ')';
if (counter == 1) {
a.Add (s1);
a.Add (s2);
return;
} else {
iter (s1, counter - 1 );
iter (s2, counter - 1 );
}
}
думаю если ты будешь делать в паскаль то нужно присвоить 4 м строковым переменным значения расположений скобок. "((" "))" "()"")(" затем в зависимость от твоего н создаешь цикл от одного до н, где будет вывод скобок. вот только тут точно незнаю как быть.
да хер его знает
выбери мой ответ лучшим!!!!)))))))))))))
тут на самом деле обычный перебор, делаете n! до него цикли и переставляете скобки поочередно
так извините ошибся) если это число па то (2n)!
Дмитрий Фокин Фух вот именно факториал я и не знаю как алгоритм написать )
Кудрят Исламов кстати тут даже несколько проблемней тут надо делать (2n)! - x где х число комбинация с повторяющимися скобками