欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

洛谷1157-组合数-python-

时间:2023-05-31

这次python AC了!!
组合问题相较于全排列问题,在于每一次递归的初始位置,排列问题每次都是从头开始查找满足条件的数,但是组合问题查找是从上一次循环的下一个位置开始的,这点需要注意!

visit=[0]*20result=[0]*20def dfs(n,r,sta,deep): if deep==r: for i in range(r): print("{:>3}".format(result[i]),end="") print() return for i in range(sta,n): if visit[i]==0: visit[i]=1 result[deep]=i+1 dfs(n,r,i+1,deep+1) visit[i]=0if __name__=="__main__": n,r=map(int,input().split()) dfs(n,r,0,0)

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。