Advertisement

排列棋子(Python)

阅读量:

题目描述

将M枚白棋与N枚黑棋排列成一行,能够形成多种不同的排列方式。例如,当白棋数量为2、黑棋数量为2时,总共可以排列出如图所示的6种不同组合(依据组合数计算公式:)

在这里插入图片描述

请编写一段代码,生成所有由M个白棋与N个黑棋构成的排列组合图案。

为防止因输出内容过多而引发程序运行超时的问题,特设定约束条件:1≤M,N≤6

输入

给定两个正整数M与N,分别代表白棋子和黑棋子的数量,且这两个数值均满足1到6之间的整数条件。

小标题

所有由M个白棋子与N个黑棋子构成的排列方式。
要求:每一行展示一种排列形式,其中白棋子以0表示,黑棋子以1表示,并按照升序顺序输出

样例输入 Copy

测试样例1

样例输出 Copy

测试样例1

复制代码
    a = [0] *20 #盒子
    m,n= map(int,input().split()) # n个黑子 m个白子
    s = n+m #s 个盒子
    used = [m,n]#列表uesd模拟两种棋子的数量,默认都是0
    def dfs(step):

全部评论 (0)

还没有任何评论哟~