解题思路:
注意事项:
参考代码:
import itertools #生成由1到9构成的不同四位数,tertools.permutations中生成的一个元素是这种('1','2','3','4')的元组,然后join连接成'1234'再转为int 1234 mulit=[int(''.join(j)) for j in itertools.permutations([str(i) for i in range(1,10)],4)] nums=[str(i) for i in range(1,10)] for m in mulit: #右边(一定是四位数)=一位数X四位数 or 两位数X 三位数,只有这两种可能 for i in range(2,99): #判断能否整除 if m%i==0: $如果能够整除看看这三个数是不是构成1,2,3,4,5,6,7,8,9(这里set比较和顺序无关) if set(list(str(m))+list(str(i))+list(str(m//i)))==set(nums): print('{} = {} x {}'.format(m,i,m//i))
0.0分
1 人评分