![]() |
|
Модераторы: bsa |
![]()
|
|
| sergvas |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 17.12.2009 Репутация: нет Всего: нет |
Задана последовательность a1, а2, …, ак.. Из всех букв составляются всевозможные слова.
Каких слов будет больше: у которых хотя бы одна из этих букв окажется на своем месте, или у которых ни одна не будет стоять на своем месте?
При вводе разных букв(qwer)вроде работает.Как сделать,если символы в последовательности повторяются(qwee)? Модератор: не забываем пользоваться кнопочкой "Код" Это сообщение отредактировал(а) sergvas - 17.12.2009, 23:02 |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
можно узнать полный текст задания?
|
|||
|
||||
| sergvas |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 17.12.2009 Репутация: нет Всего: нет |
полнее некуда...такой у нас препод-типа сам догадайся
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
минимальное количество букв в слове задано? слово должно содержать все введенные символы?
|
|||
|
||||
| sergvas |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 17.12.2009 Репутация: нет Всего: нет |
минимальное количество букв в слове задано?
не задано. слово должно содержать все введенные символы? все слова составляются из всех введенных символов. |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
sergvas, тогда какие проблемы вообще?
Легко делается рекурсией: 1. создаешь новый список "слов" 2. если размер массива 1 символ, то добавляешь его в список без изменений и выходишь из функции, иначе: 3. берешь i-й символ (0 <= i < n) и исключаешь из массива (массив должен уменьшиться на 1) 4. вызывая рекурсивно эту функцию (параметры - массив символов, результат - список слов) получаешь список слов, в каждое из которых вставляешь в i-ю позицию исключенный символ и добавляешь в список слов, который создал в п.1 5. повторяешь цикл для всех i 6. возвращаешь созданный в п.1 список. |
|||
|
||||
| sergvas |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 17.12.2009 Репутация: нет Всего: нет |
А как это реализовать?
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
руками
|
|||
|
||||
| sergvas |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 17.12.2009 Репутация: нет Всего: нет |
логично...но вот как-то не получилось у меня,поэтому и написал
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
sergvas, что именно? Какие возникли трудности?
|
|||
|
||||
| sergvas |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 17.12.2009 Репутация: нет Всего: нет |
enabled_cnt[t]=1; этот массив в моей проге(показывает сколько раз встречается каждая буква,в моей проге все по одному) заполняется в моем случае всеми еденицами,а мне как-то нужно,я хз как,чтобы на входе проверялось есть ли одинаковые буквы,потом заполнялся соответствующим образом этот массив,ну и т.д....
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
sergvas, а ты не думал, что твой алгоритм не очень верен? Может стоит переписать используя мой? Тем более, что мой подразумевает всего одну функцию плюс пару-тройку на обслуживание списков (создание, добавление, удаление).
|
|||
|
||||
| sergvas |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 17.12.2009 Репутация: нет Всего: нет |
да я уже думал об этом...только времени у меня в обрез...не успею скорее всего,если начну переписывать
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
sergvas, ты считаешь, что проще исправить нерабочий алгоритм, чем реализовать в 20-40 строчек новый? Да ты легких путей не ищешь.
|
|||
|
||||
| sergvas |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 17.12.2009 Репутация: нет Всего: нет |
Ты типа пошутить решил,Петросян?
10 строчек кода и всё заработало |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |