递归实现指数型枚举

递归实现指数型枚举

https://ac.nowcoder.com/acm/contest/998/A

链接:https://ac.nowcoder.com/acm/contest/998/A 打开就是题目!!

番外话:你玩蛋仔吗

eeeee~我是大白鹅

好吧,其实这道题简单爆了!!!,一个递归(深搜)就解决了

上代码!!!!!!

#include <bits/stdc++.h>
using namespace std;
int n;
int s[1000];

void dfs(int x) {//控制层数
	if (x == n) {
		for (int i = 0; i <= n; i++) {
			if (s[i] == 1) {
				cout << i + 1 << " ";
			}
		}
		cout << endl;
		return;
	}
	s[x] = 2;
	dfs(x + 1);
	s[x] = 0;    //还原!还原!还原!重要的事情说三遍

	s[x] = 1;
	dfs(x + 1);
	s[x] = 0;//还原!还原!还原!重要的事情说三遍
}

int main() {
	cin >> n;
	dfs(0); // 从第0个开始遍历
	return 0;
}

就那么简单,走时留个赞!!,蟹蟹(本人第一篇博客!!)

注:不知道神马时候作者爱上叹号了

全部评论
看了的请留个名!!蟹蟹🦀🦀
点赞 回复 分享
发布于 2024-04-24 14:11 重庆
误盗!!,虽然AC但只是借鉴!!
点赞 回复 分享
发布于 2024-04-23 15:10 重庆

相关推荐

评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务