运行都是对的,就是超时,咋优化呢
查看原帖
运行都是对的,就是超时,咋优化呢
1268160
jimoxixi楼主2024/1/22 23:41
import itertools #123456789
n = int(input())
s = "123456789"
numall = list(itertools.permutations(s))
result = 0
a = 0
b = 0
c = 0
num = ""
elem = ""
numlist = []   #a+b/c   '987653214'
for i in numall:
    numlist.append(num.join(i))
for elem in numlist:
    for i in range(1,6):
        a = int (elem[0:i])
        if a >= n:
            break
        for j in range(i+1,8):
            b = int ( elem[i:j])
            c = int ( elem[j:9])
            if b%c==0 and  a + b/c == n:
                result += 1
print(result)
2024/1/22 23:41
加载中...