解题思路:
注意事项:
参考代码:
方法一:直接全排列再去重
from itertools import permutations
try:
while True:
a=input()
s=input()
slis=list(s)
quanpailie=list(permutations(slis))
print(len(set(quanpailie)))
except:pass
方法二:计算出全排列数量,再除以每个重复的元素的排列数。
from math import factorial
try:
while True:
a = input()
s=input()
slis=list(s)
sset=set(slis)
quanpailie = factorial(a)
for i in sset:
quanpailie/=(factorial(slis.count(i)))
print(int(quanpailie))
except:pass
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:1091 |
C语言程序设计教程(第三版)课后习题10.1 (Java代码)浏览:1493 |
校门外的树 (C语言代码)浏览:733 |
用筛法求之N内的素数。 (C语言代码)浏览:890 |
K-进制数 (C语言描述,蓝桥杯)浏览:955 |
字符逆序 (C语言代码)浏览:675 |
Pascal三角 (C语言代码)浏览:707 |
上车人数 (C语言代码)浏览:753 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:604 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:559 |