分析:提炼出题干的意思:用1和2产生不同组合,使得他们的和等于台阶的级数,输出有多少种组合方式。...解决: 主要的问题就是如何利用1和2产生不同的组合,查阅了python关于排列组合相关的资料
最后发现了一个强大的python库 itertools
In [2]: import itertools..., 2)
(2, 1, 1)
(2, 1, 2)
(2, 2, 1)
(2, 2, 2)
itertools.permutations(sequence,n) # 从sequence中拿出n个数做排列... ...:
...:
(1, 1, 1, 1)
(1, 1, 1, 2)
(1, 1, 2, 2)
(1, 2, 2, 2)
(2, 2, 2, 2)
回到咱们的问题, 在这几个函数中...
输入台阶数:3
总的组合数:3
kali@Deepin:~$ python3 demo.py
输入台阶数:4
总的组合数:5
kali@Deepin:~$ python3 demo.py
输入台阶数