改动一下排列的代码,迅速变成组合问题的求解:
def perm(n,m,current,lists=[]): if m == len(lists): print ' '.join( map(str,lists)) return 1 sum = 0 for i in range(current,n+1): if i not in lists: sum+=perm(n,m,i+1,lists+[i]) return sum n,m = [int(i) for i in raw_input().split()] print perm(n,m,1)
python 上手果真比较快..
快速实现排列与组合
本文介绍了一种通过简单修改代码将排列问题转化为组合问题的方法,并提供了具体的Python代码实现。通过对核心函数`perm`的设计,实现了从排列到组合的转换。
925

被折叠的 条评论
为什么被折叠?



