![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 18.02.2010
Сообщений: 164
|
![]()
Здравствуйте, не получается составить все возможные выражения из данных скобок ((((())))) т.е. Нужно составить все возможные выражения каким образом можно этого достичь ?
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
1) Вам же в Вашей прошлой теме уже всё растолковали. Разве не так?!
2) Если не заморачиваться с оптимизацией, то я бы предложил решить задачу "в лоб" - путём ПОЛНОГО перебора всех вариантов с контролем конечной полученной строки на правильность скобок. Т.о. алгорим простой. Задаём исходный набор. Проверяем, что он количество отрывающих скобок в наборе = количеству закрывающих. Если нет - Сообщение о невозможности составления и выход. в цикл: - получаем очередную перестановку (вариант). - Проверяем, если она проходит проверку на валидность, то выводим этот вариант. всё. |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 18.02.2010
Сообщений: 164
|
![]()
Вы меня не поняли так как у меня 10 скобок т. е. 5 справа 5 слева , значит у нас возможных вариантов 2 в 10 степени = 1024. Как составить эти выражения ?
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
да, Вы правы. я Вас не понял.
немного сбили с толку скобки. Такой вариант )))))(((( у Вас считается допустимым? |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 18.02.2010
Сообщений: 164
|
![]()
я переделал проверку с этим все ок, мне нужно другое как составить все выражения со скобками 5 на 5??как я понял создаем цикл и нужно пребрать ВСЕ возможные выражения.Как эти выражения сосставить??? вот в чем вопрос не в проверке выражения а в их составлении?
Последний раз редактировалось Alex_sim; 21.05.2010 в 15:12. |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 18.02.2010
Сообщений: 164
|
![]()
Поясните пожалуйста как это сделать , код совсем не нужен расскажите на словах так понятнее . . .
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 18.02.2010
Сообщений: 164
|
![]()
Вот например у нас есть открытая и закрытая скобка т.е. *Будет тоже самое если 1 и 0 , например дано выражение длины 2 , начинаем перебирать : 00, 01 , 10, 11 . Все , а как это сделать со скобками?Сам процесс за программирования не понятен со скобками !
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
пример реализации на Pascal через рекурсию.
Код:
p.p.s. а вот на С# (Вам же вроде бы код под .NET нужен): Код:
Последний раз редактировалось Serge_Bliznykov; 23.05.2010 в 00:15. |
![]() |
![]() |
![]() |
#9 |
Я
Форумчанин
Регистрация: 24.04.2010
Сообщений: 693
|
![]()
на этот вопрос вы так и не ответили, так является допустимым или нет, это повлияет на составление вариантов
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©. |
![]() |
![]() |
![]() |
#10 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
![]() Да теперь это не проблема. Я же говорю, неоптимально, но "в лоб" - перебираем все варианты, и достаточно поставить проверку на валидность, перед выводом очередного варианта, как программа будет полностью закончена: Код:
|
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Приходит не полный ответ | Shouldercannon | Общие вопросы Delphi | 3 | 12.03.2010 21:45 |
полный путь | tae1980 | Microsoft Office Excel | 7 | 08.05.2009 10:46 |
Полный перебор или есть другие варианты? | androidvsu | Помощь студентам | 8 | 12.03.2009 14:07 |
Полный венигрет !!! | MaxZoa | Microsoft Office Excel | 5 | 17.04.2008 09:28 |
Полный аминь | AtomX | Общие вопросы Delphi | 4 | 25.12.2006 14:33 |