算法竞赛进阶指南--递归实现指数型枚举

vector<int> chosen;
void calc(int x) {
	if (x == n + 1) {
		for (int i = 0; i < chosen.size(); i++)
			printf("%d ", chosen[i]);
		puts("");
		return;
	}
	calc(x + 1);
	chosen.push_back(x);
	calc(x + 1);
	chosen.pop_back();
}
posted @ 2020-04-14 10:53  风骨散人  阅读(122)  评论(0编辑  收藏  举报