Python中两个字符置换成固定长度的字符串,每个字符的数目相等

2024-05-08 18:21:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经看了下面的两个问题,这两个问题似乎最接近我的问题,但不要让我回答我的问题。在

Permutation of x length of 2 characters

How to generate all permutations of a list in Python

我正在尝试找到一种方法,取两个字符,比如“a”和“B”,并找到这些字符的所有唯一排列成一个40个字符的字符串。另外-我需要每个字符在字符串中被表示20次。所以所有得到的字符串都有20'A和20'B

像这样:

'AAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBB'
'AAAAAAAAAAAAAAAAAAABABBBBBBBBBBBBBBBBBBB'
'AAAAAAAAAAAAAAAAAABAABBBBBBBBBBBBBBBBBBB'

等等。。。在

我真正需要的是计数遵循这些规则的独特组合。在

^{pr2}$

这是可行的,但不能很好地扩展到20'A'和20'B'的输入字符串。在我杀了它之前,即使只是扩大到10'A和10'B也跑了20分钟。在

根据我所描述的参数,有没有更有效的方法来处理这个问题?在


Tags: ofto方法字符串inall字符length
1条回答
网友
1楼 · 发布于 2024-05-08 18:21:34

如果您只需要计数,则可以将其推广到^{} choose ^{}。您的总大小是n,而{}的元素数量是k。所以,你的答案是:

(n选择k)=(40选择20)=137846528820

相关问题 更多 >