from itertools import combinations
from collections import Counter
l1 = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40]
l2 = list(combinations(l1,12))
#第一次输入条件
l3 = [1,11,21,31] #在这里输入比如2,3,4之类
l3 = [int(x) for x in l3 ] #将字符串转换成数值
a = 1 #请输入范围最小值
a1 = 2 #请输入范围最大值
l4 = []
for j in l2:
c = Counter(j) & Counter(l3)
if a <= len(c)<= a1:
l4.append(j)
print("第一次过滤后还剩下多少组:",len(l4),'组')
l5 = [2,12,22,32] #在这里输入比如2,3,4之类
l5 = [int(x) for x in l5 ] #将字符串转换成数值
a = 1 #请输入范围最小值
a1 = 2 #请输入范围最大值
l6 = []
for j in l4:
c = Counter(j) & Counter(l5)
if a <= len(c)<= a1:
l6.append(j)
print("第二次过滤后还剩下多少组:",len(l6),'组')
l7 = [3,13,23,33] #在这里输入比如2,3,4之类
l7 = [int(x) for x in l7 ] #将字符串转换成数值
a = 1 #请输入范围最小值
a1 = 2 #请输入范围最大值
l8 = []
for j in l6:
c = Counter(j) & Counter(l7)
if a <= len(c)<= a1:
l8.append(j)
print("第三次过滤后还剩下多少组:",len(l8),'组')
l9 = [4,14,24,34] #在这里输入比如2,3,4之类
l9 = [int(x) for x in l9 ] #将字符串转换成数值
a = 1 #请输入范围最小值
a1 = 2 #请输入范围最大值
l10 = []
for j in l8:
c = Counter(j) & Counter(l9)
if a <= len(c)<= a1:
l10.append(j)
print("第四次过滤后还剩下多少组:",len(l10),'组')
l11 = [5,15,25,35] #在这里输入比如2,3,4之类
l11 = [int(x) for x in l11 ] #将字符串转换成数值
a = 1 #请输入范围最小值
a1 = 2 #请输入范围最大值
l12 = []
for j in l10:
c = Counter(j) & Counter(l11)
if a <= len(c)<= a1:
l12.append(j)
print("第五次过滤后还剩下多少组:",len(l12),'组')
l13 = [6,16,26,36] #在这里输入比如2,3,4之类
l13 = [int(x) for x in l13 ] #将字符串转换成数值
a = 1 #请输入范围最小值
a1 = 2 #请输入范围最大值
l14 = []
for j in l12:
c = Counter(j) & Counter(l13)
if a <= len(c)<= a1:
l14.append(j)
print("第六次过滤后还剩下多少组:",len(l14),'组')
l15 = [7,17,27,37] #在这里输入比如2,3,4之类
l15 = [int(x) for x in l15 ] #将字符串转换成数值
a = 1 #请输入范围最小值
a1 = 2 #请输入范围最大值
l16 = []
for j in l14:
c = Counter(j) & Counter(l15)
if a <= len(c)<= a1:
l16.append(j)
print("第七次过滤后还剩下多少组:",len(l16),'组')
l17 = [8,18,28,38] #在这里输入比如2,3,4之类
l17 = [int(x) for x in l17 ] #将字符串转换成数值
a = 1 #请输入范围最小值
a1 = 2 #请输入范围最大值
l18 = []
for j in l16:
c = Counter(j) & Counter(l17)
if a <= len(c)<= a1:
l18.append(j)
print("第八次过滤后还剩下多少组:",len(l18),'组')
l19 = [9,19,29,39] #在这里输入比如2,3,4之类
l19 = [int(x) for x in l19 ] #将字符串转换成数值
a = 1 #请输入范围最小值
a1 = 2 #请输入范围最大值
l20 = []
for j in l18:
c = Counter(j) & Counter(l19)
if a <= len(c)<= a1:
l20.append(j)
print("第九次过滤后还剩下多少组:",len(l20),'组')
l21 = [10,20,30,40] #在这里输入比如2,3,4之类
l21 = [int(x) for x in l21 ] #将字符串转换成数值
a = 1 #请输入范围最小值
a1 = 2 #请输入范围最大值
l22 = []
for j in l20:
c = Counter(j) & Counter(l21)
if a <= len(c)<= a1:
l22.append(j)
print("第十次过滤后还剩下多少组:",len(l22),'组')