C++/python描述 AcWing 92. 递归实现指数型枚举

亓官劼 2021-04-06 14:28:43
c++ Python 递归 acwing 描述


C++/python描述 AcWing 92. 递归实现指数型枚举

大家好,我叫亓官劼(qí guān jié ),在GitHub & CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在GitHub & CSDN中写博客,唯一博客更新的地址为:亓官劼的博客 ,近期将逐渐同步刷题相关记录到GitHub:Algorithmic-learning-records,大多是本人的刷题记录,如果转载请附上原文地址,谢谢。


由于学习工作的需要,算法刷题将会逐渐由C++向Python3过度,正在过度中,如实现的不太优美,请见谅。

本文原创为亓官劼,请大家支持原创,部分平台一直在恶意盗取博主的文章!!!
若需联系博主,可以联系本人微信:qiguanjie2015


从 1∼n 这 n 个整数中随机选取任意多个,输出所有可能的选择方案。

输入格式

输入一个整数 n。

输出格式

每行输出一种方案。

同一行内的数必须升序排列,相邻两个数用恰好 1 个空格隔开。

对于没有选任何数的方案,输出空行。

本题有自定义校验器(SPJ),各行(不同方案)之间的顺序任意。

数据范围

1≤n≤151≤n≤15

输入样例:

3

输出样例:

3
2
2 3
1
1 3
1 2
1 2 3

解题思路

dfs+回溯

算法实现一 C++

#include<iostream>
using namespace std;
const int N = 15;
int s[N],n;
void dfs(int u){

if(u == n){

// 搜索到最后,终止并输出
for(int i = 0; i < n ; i++)
if(s[i] == 1)
cout << i+1 <<" ";
cout << endl;
return ;
}
s[u] = 2;
dfs(u+1);
s[u] = 1;
dfs(u+1);
// 回溯,0表示初试状态,1表示选择,2表示不选
s[u] = 0;
}
int main(){

cin >> n;
dfs(0);
return 0;
}

算法实现二 Python

n = int(input())
# 0表示初始状态,1表示选择,2表示不选
tmp = [0 for i in range(n)]
def dfs(u):
if u == n:
for i,d in enumerate(tmp):
if d == 1:
print(i+1,end=' ')
print('')
return None
tmp[u] = 2
dfs(u+1)
tmp[u] = 1
dfs(u+1)
tmp[u] = 0
dfs(0)
版权声明
本文为[亓官劼]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_43422111/article/details/115443377

  1. Python机器学习算法:线性回归
  2. 一篇文章教会你使用Python网络爬虫下载酷狗音乐
  3. Python中[:]与[::]的用法
  4. Python教程:文件、异常处理和其他
  5. Python排序算法汇总
  6. 《Python Cookbook 3rd》笔记(2.12):审查清理文本字符串
  7. 《Python Cookbook 3rd》笔记(2.11):删除字符串中不需要的字符
  8. python 爬虫 简单实现百度翻译
  9. Python实现CART决策树
  10. numpy、scipy、pandas、matplotlib的读书报告
  11. python爬虫Selenium库详细教程
  12. Python爬取并分析B站最热排行榜,我发现了这些秘密
  13. DolphinDB与Pandas对于大文本文件处理的性能对比
  14. Python3网络爬虫(三):漫画下载,动态加载、反爬虫这都不叫事!
  15. 奔溃啦~希望 Python 可以让我少掉点头发 | 每日趣闻
  16. 教你用Python自制拼图小游戏,轻松搞定熊孩子
  17. 查找算法总结及其算法实现Python/Java
  18. 查找算法总结及其算法实现Python/Java
  19. 实战|手把手教你用Python爬取存储数据,还能自动在Excel中可视化
  20. 生物信息学算法之Python实现|Rosalind刷题笔记:003 中心法则:翻译
  21. Python implementation of bioinformatics algorithms
  22. 利用Python将PDF文档转为MP3音频
  23. Python代码实现“FlappyBird”小游戏
  24. jenkins实现接口自动化持续集成(python+pytest+ Allure+git)
  25. Python自学教程 | 如何零基础入门Python? - 知乎
  26. python练习-print str
  27. Python set (set)
  28. 为帮剪辑小姐姐少熬夜,我用 Python 硬肝短视频音频创作 - 知乎
  29. 醒醒!Python已经支持中文变量名啦!
  30. Python爬取小红书微信小程序
  31. 用Python写代码,一分钟搞定一天工作量,同事直呼:好家伙 - 知乎
  32. Python将html文件转为图片 - 知乎
  33. 盘点Python列表生成式的三种方法
  34. Python获取任意渐变色区段的16进制色值列表 - 知乎
  35. Python元组拆包捡到8倍镜快准狠
  36. [Python] 茎叶图和复合饼图的画法
  37. 都学Python了,C++难道真的用不着了吗?
  38. python 内置数据结构list、set、dict、tuple(三)
  39. Python built in data structure list, set, dict, tuple (3)
  40. python 内置数据结构list、set、dict、tuple(三)
  41. Python built in data structure list, set, dict, tuple (3)
  42. 字符串中第一个唯一的字符
  43. Characters of escape in Python and JavaScript
  44. python最大公约数
  45. python爬虫(正则取数据)读取表格内的基金代码后爬取基金最新净值,同时写到对应的表格中,基于最近一次购买净值计算出涨跌幅(名字有点长)
  46. python爬虫(正则取数据)读取表格内的基金代码后爬取基金最新净值,同时写到对应的表格中,基于最近一次购买净值计算出涨跌幅(名字有点长)
  47. 大一新生开发的小工具火了!不一样的Python编程体验,还是可视化的那种
  48. Python装饰器(2)
  49. Python装饰器(3)
  50. Django+Vue开发生鲜电商平台之1.项目介绍
  51. 这些顶级 Python 库,你都用过吗?
  52. Python基础之:Python的数据结构
  53. 超详细1小时学会Python
  54. 为什么全网都在劝你学Java、Python,而不是C++?
  55. Python questions [including answers and analysis]
  56. C++/Python描述 AcWing 92. 递归实现指数型枚举
  57. 从零开始学习python | 实例讲解如何制作Python模式程序
  58. 大神论坛 史上最全植物大战僵尸分析及游戏辅助Python实现
  59. Python CET-4 and CET-6, come and test your programming level
  60. Python flash quick start and advanced