Mail.ruПочтаМой МирОдноклассникиИгрыЗнакомстваНовостиПоискСмотриComboВсе проекты

Привет всем! Кто-нибудь может помочь наводкой на хороший генератор комбинаций чисел? Того, что мне надо сам не нашёл.

За ПРАВДУ!!! Искусственный Интеллект (281064), закрыт 8 месяцев назад
У меня есть семнадцать чисел:
3 12 13 17 18 34 36 1 6 7 8 14 16 22 28 31 32
Необходимо создать из них ВСЕ возможные ШЕСТИЗНАЧНЫЕ комбинации, т. е.:
1; 3; 12; 18; 34; 36;
3; 7; 8; 17; 18; 34;
и т. п. . Буду очень признателен за любую дельную наводку!
Лучший ответ
Xman Xmango Мыслитель (7538) 8 месяцев назад
могу написать программу по комбинаторике.
За ПРАВДУ!!!Искусственный Интеллект (281064) 8 месяцев назад
Благодарю, но мне нужна наводка на готовый генератор.
Таких в сети много, но именно составляющего шестизначные связки всех возможных сочетаний чисел от единицы до 40 - не нашёл, увы (
За ПРАВДУ!!!Искусственный Интеллект (281064) 8 месяцев назад
На всякий случай, если ничего не найду: сколько может стоить написание Вами подобной программы?
Привожу конкретный пример:
Например, вчера у меня было 7 чисел подлежащих генерации, вот они:
3 12 13 17 18 34 36
А вот помощь, которую я получил:
по формуле 7!/6!*(7-6)!=7 сочетаний. 3,12,13,17,18,34; 3,12,13,17,18,36; 12,13,17,18,34,36; 3,13,17,18,34,36; 3,12,13,18,34,36; 3,12,17,18,34,36; 3,12,13,17,34,36;
Сегодня же, оказалось, что числа другие и их больше:
(всего 17):
3 12 13 17 18 34 36
1 6 7 8 14 16 22 28 31 32
и из них мне нужно создать ВСЕ возможные шестизначные сочетания, а также узнать КОЛИЧЕСТВО возможных ШЕСТИЗНАЧНЫХ сочетаний.
Xman Xmango Мыслитель (7538) Я вас понял. Тут ещё надо учесть, могут ли числа менять последовательность, т. е. 1,2,3,4,5,6 и 2,1,3,4,5,6 - можно считать как за одну комбинацию, а можно как за разные. В общем опыт у меня есть, пишите на почту: hotpus@mail.ru
Остальные ответы
11sen 11 Знаток (368) 8 месяцев назад
на лабе такую прогу писали... вон 1 уже гготов написать
Mikhail Levin Искусственный Интеллект (611801) 8 месяцев назад
вообще непонятно, о чем вы. Что такое "генератор чисел" bult у вас хоть одна шестизначная комбинация?

если вы про перестановки - так в С++ в STL есть генератор перестановок. Там все просто.
За ПРАВДУ!!!Искусственный Интеллект (281064) 8 месяцев назад
Привожу пример, (из того, чем мне вчера помогли, но, увы - данные запросы изменились, и это уже неактуально).
Например, вчера у меня было 7 чисел подлежащих генерации, вот они:
3 12 13 17 18 34 36
А вот помощь, которую я получил:
по формуле 7!/6!*(7-6)!=7 сочетаний. 3,12,13,17,18,34; 3,12,13,17,18,36; 12,13,17,18,34,36; 3,13,17,18,34,36; 3,12,13,18,34,36; 3,12,17,18,34,36; 3,12,13,17,34,36
За ПРАВДУ!!! Искусственный Интеллект (281064) Сегодня же, оказалось, что числа другие и их больше: (всего 17): 3 12 13 17 18 34 36 1 6 7 8 14 16 22 28 31 32 и из них мне нужно создать ВСЕ возможные шестизначные сочетания.
Вячеслав Бурмистров Оракул (92299) 8 месяцев назад
#include
using namespace std;
void swap(int *a, int i, int j)
{
int s = a[i];
a[i] = a[j];
a[j] = s;
}
bool NextSet(int *a, int n)
{
int j = n - 2;
while (j != -1 && a[j] >= a[j + 1]) j--;
if (j == -1)
return false; // больше перестановок нет
int k = n - 1;
while (a[j] >= a[k]) k--;
swap(a, j, k);
int l = j + 1, r = n - 1; // сортируем оставшуюся часть последовательности
while (l<r)
swap(a, l++, r--);
return true;
}
void Print(int *a, int n) // вывод перестановки
{
static int num = 1; // номер перестановки
cout.width(3); // ширина поля вывода номера перестановки
cout << num++ << ": ";
for (int i = 0; i < n; i++)
cout << a[i] << " ";
cout << endl;
}
int main()
{
int n, *a;
cout << "N = ";
cin >> n;
a = new int[n];
for (int i = 0; i < n; i++)
a[i] = i + 1;
Print(a, n);
while (NextSet(a, n))
Print(a, n);
cin.get(); cin.get();
return 0;
}
За ПРАВДУ!!!Искусственный Интеллект (281064) 8 месяцев назад
Привожу пример, (из того, чем мне вчера помогли, но, увы - данные запросы изменились, и это уже неактуально).
Например, вчера у меня было 7 чисел подлежащих генерации, вот они:
3 12 13 17 18 34 36
А вот помощь, которую я получил:
по формуле 7!/6!*(7-6)!=7 сочетаний. 3,12,13,17,18,34; 3,12,13,17,18,36; 12,13,17,18,34,36; 3,13,17,18,34,36; 3,12,13,18,34,36; 3,12,17,18,34,36; 3,12,13,17,34,36
За ПРАВДУ!!! Искусственный Интеллект (281064) Сегодня же, оказалось, что числа другие и их больше: (всего 17): 3 12 13 17 18 34 36 1 6 7 8 14 16 22 28 31 32 и из них мне нужно создать ВСЕ возможные шестизначные сочетания.
Сирена Мудрец (10752) 8 месяцев назад
Я могу, проверишь, выйграешь, мне 10 процентов, но без обмана
алексей кашенцевМастер (1910) 8 месяцев назад
Я не обману если поможешь .Только я математике ноль
За ПРАВДУ!!!Искусственный Интеллект (281064) 8 месяцев назад
Сегодня уже поздно.
Результатов не прошу, но укажи, пожалуйста, хотя-бы, полное количество необходимых комбинаций. Если это будет реально для меня по деньгам - то к следующему тиражу (на этой неделе), обращусь к тебе.
Насчёт денег можешь не беспокоиться. Во всём мире никому ни одной копейки не должен.
За ПРАВДУ!!! Искусственный Интеллект (281064) Если на скрине ниже, правильное количество комбинаций, то это неактуально. Буду ждать меньшего количества цифр в тираже.
Сергей Черных Ученик (11) 8 месяцев назад
Интернет в прмощь
За ПРАВДУ!!!Искусственный Интеллект (281064) 8 месяцев назад
Я же написал в вопросе: того, что мне надо сам не нашёл.
Несколько часов потратил на поиски.
Macho007 Мудрец (19840) 8 месяцев назад
готовых программ не найдешь, нужно писать под заказ!
Nik Vas Искусственный Интеллект (164066) 8 месяцев назад
Написать программу - один час, но оно мне не надо
А драть с тебя деньги за такую ерунду - стыдно.
Chraiber Мыслитель (7273) 8 месяцев назад
Любой начинающий программист тебе это сделает за несколько часов. Поищи близко к дому.
Похожие вопросы
Также спрашивают