from itertools import permutations
defsc_perm_comb(num):
sNum =str(num)returnsum({int(''.join(p))for d inrange(1,len(sNum)+1)for p in permutations(sNum, d)})
答案2:
import itertools
defsc_perm_comb(num):returnsum([int(''.join(p))for i inrange(1,len(str(num))+1)for p inset(itertools.permutations(str(num), i))if p[0]!="0"])
答案3:
import itertools
defsc_perm_comb(num):
total=0for k inrange(1,len(str(num))+1):
t=set((itertools.permutations(str(num),k)))for l in t:
temp=''.join(l)if(temp[0:1]!='0'):
total+=int(temp)return total
答案4:
defsc_perm_comb(num):returnsum(int("".join(i))for j inxrange(1,len(str(num))+1)for i inset(__import__("itertools").permutations(str(num), j))if i[0]!='0')
答案5:
sc_perm_comb=lambda n:sum({int(''.join(p))for r inrange(len(str(n)))for p in__import__('itertools').permutations(str(n),r+1)})
答案6:
from itertools import permutations
defsc_perm_comb(num):
s =str(num)returnsum({int(''.join(p))for c, _ inenumerate(s,1)for p in permutations(s, c)})
答案7:
import itertools
defsc_perm_comb(num):input=list(str(num))
c,s,r,arr=0,{},[],sum([map(list,itertools.combinations(input,i))for i inrange(len(input)+1)],[])for a in arr: r+=itertools.permutations(a)for a in r:iflen(a):
v=int(''.join(a))ifnot v in s: s[v]=1; c+=int(v)return c
答案8:
import itertools
defsc_perm_comb(num):
line =[]for i inrange(len(str(num))):
line +=[int(''.join(n))for n in itertools.permutations(list(str(num)), i+1)]returnsum(set(line))
答案9:
from itertools import permutations as perms
defsc_perm_comb(num):
total =0
seen =set()for i inxrange(1,len(str(num))+1):for p in perms(str(num), i):
seen.add("".join(p))for s in seen:if s.startswith("0"):continue
total +=int(s)return total
答案10:
from itertools import combinations, permutations
defsc_perm_comb(n):if n <10:return n
xs =str(n)
ss =set()for k inrange(1,len(xs)+1):for c inset(''.join(c)for c in combinations(xs, k)):
ss |=set(int(''.join(p))for p in permutations(c)if p[0]!='0')returnsum(ss)