|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 bowen628 于 2018-6-5 16:41 编辑
- #!/usr/bin/env python3
- # coding:utf-8
- import itertools
- spc1 = ['(','']
- spc2 = ['/','-','*','+']
- spc3 = ['']
- spc4 = [')','']
- spc5 = ['/','-','*','+']
- spc6 = ['(','']
- spc7 = [')','']
- spc8 = ['/','-','*','+']
- spc9 = [')','']
- a=str(input("一号位数字: "))
- b=str(input("二号位数字: "))
- c=str(input("三号位数字: "))
- d=str(input("四号位数字: "))
- f = (d,c,b,a)
- for i1 in range(0,2):
- for i2 in range(0,4):
- for i4 in range(0,2):
- for i5 in range(0,4):
- for i6 in range(0,2):
- for i7 in range(0,2):
- for i8 in range(0,4):
- for i9 in range(0,2):
- for i in itertools.permutations(f, 4):
- if i1 == 0 and i9 == 0 and i4 == 1 and i6 == 1:
- continue
- if i2 == 1 and i[0]<i[1]:
- continue
- if i4 == 0 and (i5 == 1 or i5 == 3):
- continue
- if i4 == 0 and (i2 == 0 or i2 == 2):
- continue
- if i6 == 0 and i7 == 0:
- continue
- if i6 == 0 and (i5 == 1 or i5 == 3):
- continue
- if i6 == 0 and (i8 == 0 or i8 == 2):
- continue
- if i7 == 0 and (i2 == 0 or i2 == 2) and (i5 == 0 or i5 == 2):
- continue
- if i7 == 0 and (i8 == 1 or i8 == 3):
- continue
- if i5 == 1 and i[1]<i[2]:
- continue
- if i8 == 1 and i[2]<i[3]:
- continue
-
- try:
- jisuan = (spc1[i1]+i[0]+spc2[i2]+spc3[0]+i[1]+spc4[i4]+spc5[i5]+spc6[i6]+i[2]+spc7[i7]+spc8[i8]+i[3]+spc9[i9])
- jieguo = eval(jisuan)
- if jieguo == 24:
- print(jisuan+' = 24')
- except:
- continue
复制代码 |
|