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

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

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

Комбинации - C++

16.01.2014, 13:02. Просмотров 266. Ответов 3
Метки нет (Все метки)

Здраствуйте форумчани. Столкнулся с проблемой что немогу решить головоломку. Допустим у нас есть строка символ AAB. В результате программа должна показать такой результат:
AAB
ABA
BAA
Подкиньте идею как это можно реализовать. Я уже написал программу которая показывает все возможные варианты если в строке символ все элементы уникальные - ABC.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
char sym[3] = {'A','B','C'};
    int i[3] = {0,0,0};
 
    while (i[0] < 3)
    {
        i[1] = 0;
        while(i[1] < 3)
        {
            if(i[1] == i[0])
            {
             i[1]++;
             continue;
            }
            i[2] = 0;
            while (i[2] <  3)
            {
                if(i[2] == i[0] || i[2] == i[1])
                {
                i[2]++;
                continue;
                }
            cout << sym[i[0]] << sym[i[1]] << sym[i[2]] << endl; 
            i[2]++;
            }
        i[1]++;
        }
    i[0]++;
    }
Результат:
ABC
ACB
BAC
BCA
CAB
CBA
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2014, 13:02     Комбинации
Посмотрите здесь:

Комбинации - C++
Всем привет! Есть массив array, в переменной s хранится его размер. Нужно написать прогу, которая выведет на экран все возможные...

Комбинации с монеток - C++
В копилке есть монетки следующих номиналов: 1 2 5 10 25 50 100 из копилки достаются К монеток Сколько различных значений может...

комбинации чисел - C++
здравствуйте, помогите дауну создать проэкт. visual studio 2005-2008 вот мне данно готовый пакет string ;IntToString(int intValue) //...

Комбинации отобразить в целое - C++
Добрый день! Вот такая у меня задача: Получаю на входе 5 значений double. Пусть переменные a,b,c,d,e 1 задача расположить их в...

Все комбинации чисел от 1 до 4 - C++
Все комбинации чисел от 1 до 4. Как сделать:)? 1111, 1112, 1113, 1114, ...... 4443, 4444 - как-то так

Поиск, числа и комбинации - C++
Здравствуйте! В недавних моих темах я затрагивал подобные поиски комбинаций. Дальнейшие размышления меня привели к тому, что я хочу...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dzrkot
zzzZZZ...
519 / 349 / 53
Регистрация: 11.09.2013
Сообщений: 1,996
16.01.2014, 13:05     Комбинации #2
да по идее тоже самое, просто надо сравнить символы и если А==А то не менять их местами
DiffEreD
1429 / 766 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
16.01.2014, 13:07     Комбинации #3
std::next_permutation
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.01.2014, 13:16     Комбинации
Еще ссылки по теме:

Максимальное число из комбинации цифр - C++
Ребята помогите пожалуйста написать код к программе с комментариями в Visual Studio.Буду Очень признательна:thank_you: ...

Все возможные комбинации длины k из 0 и 1 - C++
Как бы это реализовать? Подкиньте идей или может есть готовая у кого-то. Ввод k:3 Вывод: 0 0 1 0 1 0 1 0 0 1 1 0 0 1 1 и...

Все возможные комбинации из 4 цифр - C++
Доброго времени суток! Прошу помочь с такой задачей: Пользователь вводит 4-х разрядное число. Вывести все возможные 4-х разрядные...

Все возможные комбинации из 10 цифр по n - C++
есть 10 цифр, нужно написать программу, где вводишь n-кол-во чисел в последовательности, а потом программа перебирает все возможные...

Раздача карт и оценка комбинации - C++
Привет! Думаю, ничего нового в моей теме не будут, но все же интересно, очередное задание из Дейтелов, звучит так: Программа на рис...

Все возможные комбинации 5 чисел - C++
В общем задача такая: Нужно, чтобы программа выдавала все возможные комбнации 5 чисел: 1 число от 1 до 32 2 число от 2 до 33, но...


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

Или воспользуйтесь поиском по форуму:
zss
Модератор
Эксперт С++
6321 / 5905 / 1913
Регистрация: 18.12.2011
Сообщений: 15,188
Завершенные тесты: 1
16.01.2014, 13:16     Комбинации #4
А почему не подойдет такое
C++
1
2
3
4
5
6
7
8
9
char res[N];
for(int i=0;i<N;i++)
{
   for(int j=i+1;i<N-1;i++)
            res[j]=sym[j-1]; // сдвигаем на 1 вправо
   res[i]=sym[N-1]; // вставляем сдвигаемый символ
   for(int j=0;i<i-1;i++)
            res[j]=sym[j]; // начало строки не поменялось
}
Yandex
Объявления
16.01.2014, 13:16     Комбинации
Ответ Создать тему
Опции темы

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