akai735 发表于 2021-10-26 19:39:24

python福彩复试求助

本帖最后由 akai735 于 2021-10-26 19:42 编辑

太暴力了有没有简洁点的办法
如果是指定的数字不是又要在写一个
nsum=
n=int(input("复试:"))
list_2=[]
list_1=[]
print('共计:',len(nsum),'码')
mum=1
while mum<len(nsum):
    x=0
    while x<10000:
      list_3=[]
      for i in nsum:
            if len(nsum)==n:
                b=nsum[:]
                list_1.append(b)
                nsum.pop(0)
            elif len(nsum)<n:
                b=nsum.pop(0)
                list_2.append(b)
            elif len(list_3)<n:
                list_3.append(i)
            elif list_3 not in list_1:
                list_1.append(list_3)
                b=nsum.pop(1)
                list_2.append(b)
                continue
      x=x+1
    l=1
    while l<10000:
      list_3=[]
      for j in list_2:
            if len(list_2)==n:
                b=list_2[:]
                list_1.append(b)
                list_2.pop(0)
            elif len(list_2)<n:
                b=list_2.pop(0)
                nsum.append(b)
            elif len(list_3)<n:
                list_3.append(j)
            elif list_3 not in list_1:
                list_1.append(list_3)
                b=list_2.pop(1)
                nsum.append(b)
                continue
      l=l+1
    mum=mum+1
print('共计组:',len(list_1))
for exte in list_1:
    print(exte)

傻眼貓咪 发表于 2021-10-26 21:03:10

arr =
size = 9; res = []; temp = None

for n, i in enumerate(arr):
    temp =
    for j in range(n+1, len(arr)-7):
      res.append(temp + arr)

print(f"复试:{size}\n共计:{len(arr)}\n共计组:{len(res)}")

for i in res:
    print(i)

akai735 发表于 2021-10-26 21:29:41

傻眼貓咪 发表于 2021-10-26 21:03


谢了。你太牛了还是没有看动 我先研究研究 谢谢了

yjhxjhm 发表于 2021-10-26 22:22:30

本帖最后由 yjhxjhm 于 2021-10-26 22:31 编辑

我执行了一下

复试:9
共计:27
共计组:190

谢谢分享!

akai735 发表于 2021-10-27 07:50:41

yjhxjhm 发表于 2021-10-26 22:22
我执行了一下

复试:9


我那有误

yjhxjhm 发表于 2021-10-27 22:31:11

akai735 发表于 2021-10-27 07:50
我那有误

建个新文件,将代码复制黏贴进去,保存后执行就OK了
页: [1]
查看完整版本: python福彩复试求助