Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2012, 14:37   #1
David Villa
Пользователь
 
Аватар для David Villa
 
Регистрация: 24.12.2011
Сообщений: 54
По умолчанию Сочетание из n по k

Здравствуйте. У меня дан массив объектов класса, мне надо написать функцию, которая перебирает все возможные варианты сочетаний этих элементов. В функцию должны передаваться сам массив и число K(по сколько элементов в каждом сочетании)

Вот нашел такую функцию, но она просто перебирает элементы от 1 до n и сразу их выводит, никуда не записывая. Что можно здесь изменить для решения моей задачи?

Код:
#include<conio.h>
#include <iostream>
#include <vector>

using std::vector;
using std::cin;
using std::cout;
using std::endl;

int n, k;
vector<int> v;

void comb(int num)
{
	if(num > k)
	{
		for(int i=1; i<=k; i++)
			cout << v[i];
		cout << endl;
		return;
	}
	v[num] = v[num-1]+1;
	while(v[num] <= n)
	{
		comb(num+1);
		v[num]++;
	}
	return;
}


int main(void)
{
	cin >> n >> k;
	v.resize(k+1);
	v[0]=0;
	comb(1);
        getch();
	return 0;
}
David Villa вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сочетание клавиш. Vaigard Общие вопросы Delphi 10 29.12.2010 18:25
Сочетание клавиш Fezdipekla Microsoft Office Access 3 19.06.2010 19:38
Сочетание клавиш Денис546546 Помощь студентам 3 07.12.2009 09:45
Сочетание клавиш Malder Общие вопросы .NET 0 19.01.2009 20:57
сочетание h1 и nobr - не работает. Romanbl4 HTML и CSS 4 04.04.2008 20:19