ALL (414)

# 6030048821 (20) 1 (2021-02-19 15:04) def transcribe(case): l = [] l.append('( ( '+str(case[0])+' '+case[1]+' '+str(case[2])+' ) '+case[3]+' '+str(case[4])+' ) '+case[5]+' '+str(case[6])) l.append('( '+str(case[0])+' '+case[1]+' ( '+str(case[2])+' '+case[3]+' '+str(case[4])+' ) ) '+case[5]+' '+str(case[6])) l.append('( '+str(case[0])+' '+case[1]+' '+str(case[2])+' ) '+case[3]+' ( '+str(case[4])+' '+case[5]+' '+str(case[6])+' )') l.append(str(case[0])+' '+case[1]+' ( ( '+str(case[2])+' '+case[3]+' '+str(case[4])+' ) '+case[5]+' '+str(case[6])+' )') l.append(str(case[0])+' '+case[1]+' ( '+str(case[2])+' '+case[3]+' ( '+str(case[4])+' '+case[5]+' '+str(case[6])+' ) )') for c in l: try: if eval(c) == 24: return c except ZeroDivisionError: pass return None #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.split()] cases = generate_all_combinations( num_list, '+-*/' ) found = False for case in cases: out = transcribe(case) if out != None: print(out + ' = 24') found = True break if not found: print('No Solutions')
# 6030182121 (20) 2 (2021-02-20 16:59) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': if num2!= 0: r = num1 / num2 else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split() b = [] for e in a: b.append(int(e)) cases = generate_all_combinations( b, '+-*/' ) for i in range(len(cases)): s1 = calc(cases[i][0],cases[i][1],cases[i][2]) s2 = calc(s1,cases[i][3],cases[i][4]) operate1 = calc(s2,cases[i][5],cases[i][6]) if operate1 == 24: print("( ( "+str(cases[i][0])+" "+cases[i][1]+" "+str(cases[i][2])+" )"+" "+cases[i][3]+" "+str(cases[i][4])+" )"+" "+cases[i][5]+" "+str(cases[i][6])+" = "+str(int(operate1))) break s3 = calc(cases[i][2],cases[i][3],cases[i][4]) s4 = calc(cases[i][0],cases[i][1],s3) operate2 = calc(s4,cases[i][5],cases[i][6]) if operate2 == 24: print("( "+str(cases[i][0])+" "+cases[i][1]+" "+"( "+str(cases[i][2])+" "+cases[i][3]+" "+str(cases[i][4])+" ) )"+" "+cases[i][5]+" "+str(cases[i][6])+" = "+str(int(operate2))) break s5 = calc(cases[i][0],cases[i][1],cases[i][2]) s6 = calc(cases[i][4],cases[i][5],cases[i][6]) operate3 = calc(s5,cases[i][3],s6) if operate3 == 24: print("( "+str(cases[i][0])+" "+cases[i][1]+" "+str(cases[i][2])+" )"+" "+cases[i][3]+" "+"( "+str(cases[i][4])+" "+cases[i][5]+" "+str(cases[i][6])+" )"+" = "+str(int(operate3))) break s7 = calc(cases[i][2],cases[i][3],cases[i][4]) s8 = calc(s7,cases[i][5],cases[i][6]) operate4 = calc(cases[i][0],cases[i][1],s8) if operate4 == 24: print(str(cases[i][0])+" "+cases[i][1]+" "+"( ( "+str(cases[i][2])+" "+cases[i][3]+" "+str(cases[i][4])+" )"+" "+cases[i][5]+" "+str(cases[i][6])+" )"+ " = "+str(int(operate4))) break s9 = calc(cases[i][4],cases[i][5],cases[i][6]) s10 = calc(cases[i][2],cases[i][3],s9) operate5 = calc(cases[i][0],cases[i][1],s10) if operate5 == 24: print(str(cases[i][0])+" "+cases[i][1]+" "+"( "+str(cases[i][2])+" "+cases[i][3]+" "+"( "+str(cases[i][4])+" "+cases[i][5]+" "+str(cases[i][6])+" ) )"+" = "+str(int(operate5))) break if operate1!=24 and operate2!=24 and operate3!=24 and operate4!=24 and operate5!=24: print("No Solutions")
# 6030239321 (14.6) 3 (2021-02-21 15:54) def op(x,o,y) : if o == "+" : return(x+y) if o == "-" : return(x-y) if o == "*" : return(x*y) if o == "/" : return(x/y) def wr(x,o,y) : return "( "+str(x)+" "+o+" "+str(y)+" )" def cal(cases) : for case in cases : o1,o2,o3 = case[1],case[3],case[5] i1,i2,i3,i4 = int(case[0]),int(case[2]),int(case[4]),int(case[6]) found = False for i in range(5) : try : if i == 0 : out = op(op(op(i1,o1,i2),o2,i3),o3,i4) write = wr(wr(wr(i1,o1,i2),o2,i3),o3,i4) if i == 1 : out = op(op(i1,o1,op(i2,o2,i3)),o3,i4) write = wr(wr(i1,o1,wr(i2,o2,i3)),o3,i4) if i == 2 : out = op(op(i1,o1,i2),o2,op(i3,o3,i4)) write = wr(wr(i1,o1,i2),o2,wr(i3,o3,i4)) if i == 3 : out = op(i1,o1,op(op(i2,o2,i3),o3,i4)) write = wr(i1,o1,wr(wr(i2,o2,i3),o3,i4)) if i == 4 : out = op(i1,o1,op(i2,o2,op(i3,o3,i4))) write = wr(i1,o1,wr(i2,o2,wr(i3,o3,i4))) except : pass if out == 24 : print(write) found = True break if found : break if not found : print("No Solutions") #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations( nums , '+-*/' ) cal(cases)
# 6030380021 (20) 4 (2021-02-22 22:08) # --------------------------------------------------------- def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': r = num1 / num2 return r # --------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] cases = generate_all_combinations(nums, '+-*/') for case in cases: a = case[0] b = case[2] c = case[4] d = case[6] op1 = case[1] op2 = case[3] op3 = case[5] try: if calc(calc(calc(a, op1, b), op2, c), op3, d) == 24: print("(", "(", a, op1, b, ")", op2, c, ")", op3, d, "= 24") break except: pass try: if calc(calc(a, op1, calc(b, op2, c)), op3, d) == 24: print("(", a, op1, "(", b, op2, c, ")", ")", op3, d, "= 24") break except: pass try: if calc(calc(a, op1, b), op2, calc(c, op3, d)) == 24: print("(", a, op1, b, ")", op2, "(", c, op3, d, ")", "= 24") break except: pass try: if calc(a, op1, calc(calc(b, op2, c), op3, d)) == 24: print(a, op1, "(", "(", b, op2, c, ")", op3, d, ")", "= 24") break except: pass try: if calc(a, op1, calc(b, op2, calc(c, op3, d))) == 24: print(a, op1, "(", b, op2, "(", c, op3, d, ")", ")", "= 24") break except: pass else: print("No Solutions")
# 6030924521 (20) 5 (2021-02-21 17:05) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1*num2 elif operation == '/': if num2 == 0: r = float('inf') else: r = num1/num2 return r def result(all_op): res = '' for i in all_op: result_1 = calc(calc(calc(i[0], i[1], i[2]), i[3], i[4]), i[5], i[6]) if result_1 == 24: res = '( ( {} {} {} ) {} {} ) {} {} = 24'.format(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) return res result_2 = calc(calc(i[0] , i[1], calc(i[2], i[3], i[4])), i[5], i[6]) if result_2 == 24: res = '( {} {} ( {} {} {} ) ) {} {} = 24'.format(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) return res result_3 = calc(calc(i[0], i[1], i[2]), i[3] , calc(i[4], i[5], i[6])) if result_3 == 24: res = '( {} {} {} ) {} ( {} {} {} ) = 24'.format(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) return res result_4 = calc(i[0], i[1], calc(calc(i[2], i[3], i[4]), i[5], i[6])) if result_4 == 24: res = '{} {} ( ( {} {} {} ) {} {} ) = 24'.format(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) return res result_5 = calc(i[0] , i[1], calc(i[2], i[3], calc(i[4], i[5], i[6]))) if result_5 == 24: res = '{} {} ( {} {} ( {} {} {} ) ) = 24'.format(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) return res if res == '' : return 'No Solutions' #----------------------------------------# inp = input('Enter 4 integers: ') inp = [int(i) for i in inp.split()] cases = generate_all_operations(inp , '+-*/') print(result(cases))
# 6130097621 (12) 6 (2021-02-22 15:17) import operator ops = { "+":operator.add, "-":operator.sub, "*":operator.mul, "/":operator.truediv} #--------------------------------------------------------- nums = [int(e) for e in input('Enter 4 integers: ').split()] ... ... cases = generate_all_combinations( nums, '+-*/' ) ... for case in cases : a = case try : x = ops[a[1]](a[0],a[2]) y = ops[a[3]](x,a[4]) z = ops[a[5]](y,a[6]) if z == 24 : print('( (',a[0],a[1],a[2],')',a[3],a[4],')',a[5],a[6],' = 24') break except ZeroDivisionError as e: pass try : x = ops[a[3]](a[2],a[4]) y = ops[a[1]](x,a[0]) z = ops[a[5]](y,a[6]) if z == 24 : print('(',a[0],a[1],'(',a[2],a[3],a[4],') )',a[5],a[6],' = 24') break except ZeroDivisionError as e: pass try : x = ops[a[1]](a[0],a[2]) y = ops[a[5]](a[4],a[6]) z = ops[a[3]](x,y) if z == 24 : print('(',a[0],a[1],a[2],')',a[3],'(',a[4],a[5],a[6],')',' = 24') break except ZeroDivisionError as e: pass try : x = ops[a[3]](a[2],a[4]) y = ops[a[5]](x,a[6]) z = ops[a[1]](y,a[0]) if z == 24 : print(a[0],a[1],'( (',a[2],a[3],a[4],')',a[5],a[6],')',' = 24') break except ZeroDivisionError as e: pass try : x = ops[a[5]](a[4],a[6]) y = ops[a[3]](x,a[2]) z = ops[a[1]](y,a[0]) if z == 24 : print(a[0],a[1],'(',a[2],a[3],'(',a[4],a[5],a[6],') )',' = 24') break except ZeroDivisionError as e: pass if z != 24 : print("No Solutions")
# 6130917221 (20) 7 (2021-02-22 22:15) def cal(n1, op, n2): if op == '+': r = n1 + n2 elif op == '-': r = n1 - n2 elif op == '*': r = n1 * n2 elif op == '/': if n2 != 0: r = n1 / n2 elif n2 == 0: r = 0 return r #------------------------------------------------------ nums = input('Enter 4 integers: ') nums = nums.split() num_list = [] for e in nums: num_list += [int(e)] cases = generate_all_combinations(num_list,'+-*/') for i in cases: for x in range(6): if x == 1: s1 = cal(i[0], i[1], i[2]) s2 = cal(s1, i[3], i[4]) s3 = cal(s2, i[5], i[6]) if s3 == 24: print('( (', i[0], i[1], i[2], ')', i[3], i[4], ')', i[5], i[6], '= 24') exit(0) else: mm = 0 elif x == 2: s1 = cal(i[2], i[3], i[4]) s2 = cal(i[0], i[1], s1) s3 = cal(s2, i[5], i[6]) if s3 == 24: print('(', i[0], i[1], '(', i[2], i[3], i[4], ') )', i[5], i[6], '= 24') exit(0) else: mm = 0 elif x == 3: s1 = cal(i[0], i[1], i[2]) s2 = cal(i[4], i[5], i[6]) s3 = cal(s1, i[3], s2) if s3 == 24: print('(', i[0], i[1], i[2], ')', i[3], '(', i[4], i[5], i[6], ') = 24') exit(0) else: mm = 0 elif x == 4: s1 = cal(i[2], i[3], i[4]) s2 = cal(s1, i[5], i[6]) s3 = cal(i[0], i[1], s2) if s3 == 24: print(i[0], i[1], '( (', i[2], i[3], i[4], ')', i[5], i[6], ') = 24') exit(0) else: mm = 0 elif x == 5: s1 = cal(i[4], i[5], i[6]) s2 = cal(i[2], i[3], s1) s3 = cal(i[0], i[1], s2) if s3 == 24: print(i[0], i[1], '(', i[2], i[3], '(', i[4], i[5], i[6], ') ) = 24') exit(0) else: mm = 0 x += 1 if mm == 0: print('No Solutions')
# 6130924621 (4.14) 8 (2021-02-22 21:48) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op =='-': r=num1-num2 elif op == '/': if num2==0 : r=-1000 else : r=num1/num2 elif op == '*': r=num1*num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() num_list=[] for e in nums: num_list+=[int(e)] cases = generate_all_combinations(num_list,'+-*/' ) k=0 for i in cases: for x in range(6): if x==1: q1=calc(i[0],i[1],i[2]) q2=calc(q1,i[3],i[4]) q3=calc(q2,i[5],i[6]) if 24.0<=q3<=24.5: print(q3) print('(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'= 24') exit(0) elif x==2: q1=calc(i[2],i[3],i[4]) q2=calc(i[0],i[1],q1) q3=calc(q2,i[5],i[6]) if 24.0<=q3<=24.5: print(q3) print('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'= 24') exit(0) elif x==3: q1=calc(i[0],i[1],i[2]) q2=calc(i[4],i[5],i[6]) q3=calc(q1,i[3],q2) if 24.0<=q3<=24.5: print(q3) print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','= 24') exit(0) elif x==4: q1=calc(i[2],i[3],i[4]) q2=calc(q1,i[5],i[6]) q3=calc(i[0],i[1],q2) if 24.0<=q3<=24.5: print(q3) print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','= 24') exit(0) elif x==5: q1=calc(i[4],i[5],i[6]) q2=calc(i[2],i[3],q1) q3=calc(i[0],i[1],q2) if 24.0<=q3<=24.5: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','= 24') exit(0) x+=1 print('No Solutions')
# 6230041021 (17.04) 9 (2021-02-22 04:16) def cal(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0 : r = num1 / num2 else: r = 0 return r def post_1 (num1, num2, num3, op1, op2 , op3) : rt = cal(num1, op1, num2) rt = cal(rt, op2, num3) rt = cal(rt, op3, num4) return rt def post_2 (num1, num2, num3, op1, op2 , op3): rt = cal(num2, op2, num3) rt = cal(num1, op1, rt) rt = cal(rt, op3, num4) return rt def post_3 (num1, num2, num3, op1, op2 , op3): rt1 = cal(num1, op1, num2) rt2 = cal(num3, op3, num4) rt = cal(rt1, op2, rt2) return rt def post_4 (num1, num2, num3, op1, op2 , op3) : rt = cal(num2, op2, num3) rt = cal(rt, op3, num4) rt = cal(num1, op1, rt) return rt def post_5 (num1, num2, num3, op1, op2 , op3): rt = cal(num3, op3, num4) rt = cal(num2, op2, rt) rt = cal(num1, op1, rt) return rt #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() x = [0]*4 for i in range(4): x[i] = int(nums[i]) all_even = generate_all_combinations(x, '+-*/') key = round(len(all_even)) for i in range(key): num1 = all_even[i][0] num2 = all_even[i][2] num3 = all_even[i][4] num4 = all_even[i][6] op1 = all_even[i][1] op2 = all_even[i][3] op3 = all_even[i][5] for u in range(1,6): if u == 1: qew = post_1(num1, num2, num3, op1, op2 , op3) elif u == 2: qew = post_2(num1, num2, num3, op1, op2 , op3) elif u == 3: qew = post_3(num1, num2, num3, op1, op2 , op3) elif u == 4: qew = post_4(num1, num2, num3, op1, op2 , op3) elif u == 5: qew = post_5(num1, num2, num3, op1, op2 , op3) if qew == 24: sol = [u, all_even[i]] break if qew == 24: break if qew != 24 : print('No solution') elif sol[0] == 1: print('( ( '+ str(sol[1][0])+' '+ str(sol[1][1])+' ' + str(sol[1][2])+ ' '+ ') '+str(sol[1][3]) + str(sol[1][4])+' ) '+ str(sol[1][5])+' '+str(sol[1][6]) +' = 24') elif sol[0] == 2: print('( '+str(sol[1][0])+' ' +str(sol[1][1])+' ( '+str(sol[1][2]) +' '+str(sol[1][3])+' ' +str(sol[1][4])+' ) ) '+str(sol[1][5]) +' '+str(sol[1][7])+' = 24') elif sol[0] == 3: print('( '+str(sol[1][0])+' '+str(sol[1][1])+' '+str(sol[1][2])+' ' +' ) '+str(sol[1][3])+' ( '+str(sol[1][4])+' '+str(sol[1][5]) +' '+str(sol[1][6])+' )'+' = 24') elif sol[0] == 4: print(str(sol[1][0])+' '+str(sol[1][1])+' ( ( '+str(sol[1][2])+' ' +str(sol[1][3])+' '+str(sol[1][4])+' ) '+str(sol[1][5])+' ' +str(sol[1][6])+' ) '+' = 24') elif sol[0] == 5: print(str(sol[1][0])+' '+str(sol[1][1])+' ( '+str(sol[1][2])+' ' +str(sol[1][3])+' ( '+str(sol[1][4])+' '+str(sol[1][5])+' ' +str(sol[1][6])+' ) )'+' = 24')
# 6230092021 (20) 10 (2021-02-20 03:10) def calc(num1,op,num2): if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1)*float(num2) elif op == '/': if float(num2) == 0: r = math.sqrt(2) else: r = float(num1)/float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums,'+-*/' ) for i in cases: a1 = calc(calc((calc(i[0],i[1],i[2])),i[3],i[4]),i[5],i[6]) a2 = calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) a3 = calc((calc(i[0],i[1],i[2])),i[3],calc(i[4],i[5],i[6])) a4 = calc(i[0],i[1],calc((calc(i[2],i[3],i[4])),i[5],i[6])) a5 = calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) if a1 == 24: ans = '('+' '+'('+' '+i[0]+' '+i[1]+' '+i[2]+' '+')'+' '+i[3]+' '+i[4]+' '+')'+' '+i[5]+' '+i[6] print(ans+' = 24') break if a2 == 24: ans = '('+' '+i[0]+' '+i[1]+' '+'('+' '+i[2]+' '+i[3]+' '+i[4]+' '+')'+' '+')'+' '+i[5]+' '+i[6] print(ans+' = 24') break if a3 == 24: ans = '('+' '+i[0]+' '+i[1]+' '+i[2]+' '+')'+' '+i[3]+' '+'('+' '+i[4]+' '+i[5]+' '+i[6]+' '+')' print(ans+' = 24') break if a4 == 24: ans = i[0]+' '+i[1]+' '+'('+' '+'('+' '+i[2]+' '+i[3]+' '+i[4]+' '+')'+' '+i[5]+' '+i[6]+' '+')' print(ans+' = 24') break if a5 == 24: ans = i[0]+' '+i[1]+' '+'('+' '+i[2]+' '+i[3]+' '+'('+' '+i[4]+' '+i[5]+' '+i[6]+' '+')'+' '+')' print(ans+' = 24') break a = [a1,a2,a3,a4,a5] c = 0 for e in a: if e != 24: c+=1 if c == 5: print('No Solutions') ...
# 6230131921 (20) 11 (2021-02-22 21:51) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == "-": r = num1 - num2 elif op == "*": r = num1*num2 elif op == "/": if num2 == 0: r = math.inf else: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') k = nums.split() p = [int(k[0]),int(k[1]),int(k[2]),int(k[3])] cases = generate_all_combinations( p, '+-*/' ) i = 0 z = [] for e in cases: z = cases[i] a1 = calc(z[0],z[1],z[2]) b1 = calc(a1,z[3],z[4]) c1 = calc(b1,z[5],z[6]) a2 = calc(z[2],z[3],z[4]) b2 = calc(z[0],z[1],a2) c2 = calc(b2,z[5],z[6]) a3 = calc(z[0],z[1],z[2]) b3 = calc(z[4],z[5],z[6]) c3 = calc(a3,z[3],b3) a4 = calc(z[2],z[3],z[4]) b4 = calc(a4,z[5],z[6]) c4 = calc(z[0],z[1],b4) a5 = calc(z[4],z[5],z[6]) b5 = calc(z[2],z[3],a5) c5 = calc(z[0],z[1],b5) if c1 == 24: print("( ( "+str(z[0])+" "+str(z[1])+" "+str(z[2])+" ) "+str(z[3])+" "+str(z[4])+" ) "+str(z[5])+" "+str(z[6])+" "+"="+" "+"24") break elif c2 == 24: print("( "+str(z[0])+" "+str(z[1])+" ( "+str(z[2])+" "+str(z[3])+" "+str(z[4])+" ) ) "+str(z[5])+" "+str(z[6])+" "+"="+" "+"24") break elif c3 == 24: print("( "+str(z[0])+" "+str(z[1])+" "+str(z[2])+" ) "+str(z[3])+" ( "+str(z[4])+" "+str(z[5])+" "+str(z[6])+" ) "+"="+" "+"24") break elif c4 == 24: print(str(z[0])+" "+str(z[1])+" ( "+"( "+str(z[2])+" "+str(z[3])+" "+str(z[4])+" ) "+str(z[5])+" "+str(z[6])+" ) "+"="+" "+"24") break elif c5 == 24: print(str(z[0])+" "+str(z[1])+" ( "+str(z[2])+" "+str(z[3])+" ( "+str(z[4])+" "+str(z[5])+" "+str(z[6])+" ) "+") "+"="+" "+"24") break i+=1 if i == len(cases): print("No Solutions")
# 6230133121 (16.4) 12 (2021-02-21 17:12) def calc(num1,operation,num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation =='/': if num2 == 0: r = math.pi else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations(nums,'+-*/') R = 0 equa = '' for e in cases: r1 = calc(int(e[0]),e[1],int(e[2])) r2 = calc(r1,e[3],int(e[4])) R = calc(r2,e[5],int(e[6])) equa = '(('+e[0]+e[1]+e[2]+')'+e[3]+e[4]+')'+e[5]+e[6]+' = 24' if R==24 : break r3 = calc(int(e[2]),e[3],int(e[4])) r4 = calc(int(e[0]),e[1],r3) R = calc(r4,e[5],int(e[6])) equa = '('+e[0]+e[1]+'('+e[2]+e[3]+e[4]+'))'+e[5]+e[6]+' = 24' if R==24 :break r5 = calc(int(e[4]),e[5],int(e[6])) R = calc(r1,e[3],r5) equa = '('+e[0]+e[1]+e[2]+')'+e[3]+'('+e[4]+e[5]+e[6]+') = 24' if R==24 : break r6 = calc(r3,e[5],int(e[6])) R = calc(int(e[0]),e[1],r6) equa = e[0]+e[1]+'(('+e[2]+e[3]+e[4]+')'+e[5]+e[6]+') = 24' if R==24 : break r7 = calc(int(e[2]),e[3],r5) R = calc(int(e[0]),e[1],r7) equa = e[0]+e[1]+'(('+e[2]+e[3]+e[4]+')'+e[5]+e[6]+') = 24' if R==24 :break if R==24: print(equa) else: print('No Solutions')
# 6230153721 (20) 13 (2021-02-21 00:28) def calc(num1,op,num2): if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/'and num2!=0: r=num1/num2 else: r=0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a=nums.split() num_list=[] for i in a: num_list+=[int(i)] cases = generate_all_combinations( num_list, '+-*/' ) for i in cases: v1=calc(i[0],i[1],i[2]) v2=calc(v1,i[3],i[4]) v3=calc(v2,i[5],i[6]) if v3==24: print('( (',str(i[0]),str(i[1]),str(i[2]),')',str(i[3]),str(i[4]),')',str(i[5]),str(i[6]),'=','24') break if v3!=24: for i in cases: w1=calc(i[2],i[3],i[4]) w2=calc(i[0],i[1],w1) w3=calc(w2,i[5],i[6]) if w3==24: print('(',str(i[0]),str(i[1]),'(',str(i[2]),str(i[3]),str(i[4]),')',')',str(i[5]),str(i[6]),'=','24') break if w3!=24: for i in cases: x1=calc(i[0],i[1],i[2]) x2=calc(i[4],i[5],i[6]) x3=calc(x1,i[3],x2) if x3==24: print('(',str(i[0]),str(i[1]),str(i[2]),')',str(i[3]),'(',str(i[4]),str(i[5]),str(i[6]),')','=','24') break if x3!=24: for i in cases: y1=calc(i[2],i[3],i[4]) y2=calc(y1,i[5],i[6]) y3=calc(i[0],i[1],y2) if y3==24: print(str(i[0]),str(i[1]),'(','(',str(i[2]),str(i[3]),str(i[4]),')',str(i[5]),str(i[6]),')','=','24') break if y3!=24: for i in cases: z1=calc(i[4],i[5],i[6]) z2=calc(i[2],i[3],z1) z3=calc(i[0],i[1],z2) if z3==24: print(str(i[0]),str(i[1]),'(',str(i[2]),str(i[3]),'(',str(i[4]),str(i[5]),str(i[6]),')',')','=','24') break if z3!=24: print('No Solutions')
# 6230154321 (20) 14 (2021-02-22 16:12) #--------------------------------------------------------- nums = input('Enter 4 integers: ') b = nums.split() d=[] for i in b: d.append(int(i)) cases = generate_all_combinations( d, '+-*/' ) def calc(num1,op,num2): if op =='+': r = num1+num2 elif op =='-': r = num1-num2 elif op =='*': r = num1*num2 elif op =='/': if num2==0: r=100 else: r = num1/num2 return r z=0 for n in cases: a=0 b=0 c=0 d=0 e=0 f=0 g=0 h=0 i=0 j=0 k=0 l=0 m=0 o=0 p=0 a =calc(n[0],n[1],n[2]) b =calc(a,n[3],n[4]) c =calc(b,n[5],n[6]) if c == 24: print('( ('+' '+ str(n[0])+' '+n[1]+' '+str(n[2])+' '+ ')'+' ' + n[3]+' '+str(n[4])+' '+ ')'+' '+n[5]+' '+str(n[6])+' '+'='+' '+'24') z+=1 break else: d =calc(n[2],n[3],n[4]) e =calc(n[0],n[1],d) f =calc(e,n[5],n[6]) if f==24: print('('+' '+str(n[0])+' '+n[1]+' '+'('+' '+str(n[2])+' '+n[3]+' '+str(n[4])+' '+')'+' '+')'+' '+n[5]+' '+str(n[6])+' '+'='+' '+'24') z+=1 break else: g =calc(n[0],n[1],n[2]) h =calc(n[4],n[5],n[6]) i =calc(g,n[3],h) if i==24: print('('+' '+str(n[0])+' '+n[1]+' '+str(n[2])+' '+')'+' '+n[3]+' '+'('+' '+str(n[4])+' '+n[5]+' '+str(n[6])+' '+')'+' '+'='+' '+'24') z+=1 break else: j =calc(n[2],n[3],n[4]) k =calc(j,n[5],n[6]) l =calc(n[0],n[1],k) if l==24: print(str(n[0])+' '+n[1]+' '+'('+' '+'('+' '+str(n[2])+' '+n[3]+' '+str(n[4])+' '+')'+' '+n[5]+' '+str(n[6])+' '+')'+' '+'='+' '+'24') z+=1 break else: m =calc(n[4],n[5],n[6]) o =calc(n[2],n[3],m) p =calc(n[0],n[1],o) if p==24: print(str(n[0])+' '+n[1]+' '+'('+' '+str(n[2])+' '+n[3]+' '+'('+' '+str(n[4])+' '+n[5]+' '+str(n[6])+' '+')'+' '+')'+' '+'='+' '+'24') z+=1 break if z==0: print('No Solutions')
# 6230444321 15 (2021-02-22 18:47) def calc(num1,op,num2): if op == "+": return num1 + num2 elif op == "-": return num1 - num2 elif op == "*": return num1*num2 else: if num2 == 0: return 0 return num1/num2 def do1(num1, op1, num2, op2, num3, op3, num4): draft = "( ( "+str(num1)+" "+op1+" "+str(num2)+" ) "+op2+" "+str(num3)+" ) "+op3+" "+str(num4) result = calc(calc(calc(num1,op1,num2),op2,num3),op3,num4) return draft,result def do2(num1, op1, num2, op2, num3, op3, num4): draft = "( "+str(num1)+" "+op1+" ( "+str(num2)+" "+op2+" "+str(num3)+" ) ) "+op3+" "+str(num4) result = calc(calc(num1,op1,calc(num2,op2,num3)),op3,num4) return draft,result def do3(num1, op1, num2, op2, num3, op3, num4): draft = "( "+str(num1)+" "+op1+" "+str(num2)+" ) "+op2+" ( "+str(num3)+" "+op3+" "+str(num4)+" )" result = calc(calc(num1,op1,num2),op2,calc(num3,op3,num4)) return draft,result def do4(num1, op1, num2, op2, num3, op3, num4): draft = str(num1)+" "+op1+" ( ( "+str(num2)+" "+op2+" "+str(num3)+" ) "+str(op3)+" "+str(num4)+" )" result = calc(num1,op1,calc(calc(num2,op2,num3),op3,num4)) return draft,result def do5(num1, op1, num2, op2, num3, op3, num4): draft = str(num1)+" "+op1+" ( "+str(num2)+" "+op2+" ( "+str(num3)+" "+op3+" "+str(num4)+" ) )" result = calc(num1,op1,calc(num2,op2,calc(num3,op3,num4))) return draft,result #--------------------------------------------------------- nums = input('Enter 4 integers: ') numsjin = [int(e) for e in nums.split()] cases = generate_all_combinations( numsjin, '+-*/' ) found = False for pack in cases : num1 = pack[0] num2 = pack[2] num3 = pack[4] num4 = pack[6] op1 = pack[1] op2 = pack[3] op3 = pack[5] r1,r2 = do1(num1, op1, num2, op2, num3, op3, num4) r3,r4 = do2(num1, op1, num2, op2, num3, op3, num4) r5,r6 = do3(num1, op1, num2, op2, num3, op3, num4) r7,r8 = do4(num1, op1, num2, op2, num3, op3, num4) r9,r10 = do5(num1, op1, num2, op2, num3, op3, num4) if r2 == 24 : found = True print(r1,"=",int(r2)) break elif r4 == 24 : found = True print(r3,"=",int(r4)) break elif r6 == 24 : found = True print(r5,"=",int(r6)) break elif r8 == 24 : found = True print(r7,"=",int(r8)) break elif r10 == 24 : found = True print(r9,"=",int(r10)) break if not found : print("No Solutions")
# 6230585121 (5.8) 16 (2021-02-22 23:21) def calc(num1, operation, num2): if operation == '+': r = int(num1) + int(num2) elif operation == '-': r = int(num1) - int(num2) elif operation == '*': r = int(num1)*int(num2) elif operation == '/' and num2 != 0: r = int(num1)/int(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations(num_list,'+-*/') for i in range(0,len(cases)): if calc(calc(calc((cases[i][0]),cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) == 24: print('( ( '+cases[i][0]+' '+cases[i][1]+cases[i][2]+' ) '+cases[i][3]+' '+cases[i][4]+' ) '+cases[i][5]+' '+cases[i][6]+' = 24') break if calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) == 24: print('( '+cases[i][0]+' '+cases[i][1]+' ( '+cases[i][2]+' '+cases[i][3]+' '+cases[i][4]+' ) ) '+cases[i][5]+' '+cases[i][6]+' = 24') break if calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) == 24: print('( '+cases[i][0]+' '+cases[i][1]+' '+cases[i][2]+' ) '+cases[i][3]+' ( '+cases[i][4]+' '+cases[i][5]+' '+cases[i][6]+' )'+' = 24') break if calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) == 24: print(cases[i][0]+' '+cases[i][1]+' ( ( '+cases[i][2]+' '+cases[i][3]+' '+cases[i][4]+' ) '+cases[i][5]+' '+cases[i][6]+' )'+' = 24') break if calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) == 24: print(cases[i][0]+' '+cases[i][1]+' ( '+cases[i][2]+' '+cases[i][3]+' ( '+cases[i][4]+' '+cases[i][5]+' '+cases[i][6]+' ) )') break else: print('No Solutions')
# 6231004021 (20) 17 (2021-02-20 17:48) def calc(num1, op, num2): if op == '+': return num1 + num2 if op == '-': return num1 - num2 if op == '*': return num1 * num2 if op == '/': if num2 == 0: return -999999 return num1 / num2 #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(n) for n in nums.split(' ')] cases = generate_all_combinations(nums, '+-*/' ) for case in cases: n1, n2, n3, n4 = case[0], case[2], case[4], case[6] op1, op2, op3 = case[1], case[3], case[5] # patern #1 a = calc(n1, op1, n2) b = calc(a, op2, n3) c = calc(b, op3, n4) if c == 24: print(f'( ( {n1} {op1} {n2} ) {op2} {n3} ) {op3} {n4} = 24') exit(0) # pattern #2 a = calc(n2, op2, n3) b = calc(n1, op1, a) c = calc(b, op3, n4) if c == 24: print(f'( {n1} {op1} ( {n2} {op2} {n3} ) ) {op3} {n4} = 24') exit(0) # pattern #3 a = calc(n1, op1, n2) b = calc(n3, op3, n4) c = calc(a, op2, b) if c == 24: print(f'( {n1} {op1} {n2} ) {op2} ( {n3} {op3} {n4} ) = 24') exit(0) # pattern #4 a = calc(n2, op2, n3) b = calc(a, op3, n4) c = calc(n1, op1, b) if c == 24: print(f'{n1} {op1} ( ( {n2} {op2} {n3} ) {op3} {n4} ) = 24') exit(0) # pattern #5 a = calc(n3, op3, n4) b = calc(n2, op2, a) c = calc(n1, op1, b) if c == 24: print(f'{n1} {op1} ( {n2} {op2} ( {n3} {op3} {n4} ) ) = 24') exit(0) print("No Solutions")
# 6231008621 (20) 18 (2021-02-22 21:23) def calculate(lh, op, rh): if op == "+": return lh + rh elif op == "-": return lh - rh elif op == "*": return lh * rh elif op == "/": if rh == 0: raise Exception() return lh / rh else: return lh #--------------------------------------------------------- nums = input('Enter 4 integers: ') numInts = [] for s in nums.split(): numInts.append(int(s)) found = False cases = generate_all_combinations(numInts, '+-*/') for case in cases: try: ans = calculate(calculate(calculate(case[0], case[1], case[2]), case[3], case[4]), case[5], case[6]) if ans == 24: print("( ( %d %s %d ) %s %d ) %s %d = 24" % (case[0], case[1], case[2], case[3], case[4], case[5], case[6])) found = True break except Exception: pass try: ans = calculate(calculate(case[0], case[1], calculate(case[2], case[3], case[4])), case[5], case[6]) if ans == 24: print("( %d %s ( %d %s %d ) ) %s %d = 24" % (case[0], case[1], case[2], case[3], case[4], case[5], case[6])) found = True break except Exception: pass try: ans = calculate(calculate(case[0], case[1], case[2]), case[3], calculate(case[4], case[5], case[6])) if ans == 24: print("( %d %s %d ) %s ( %d %s %d ) = 24" % (case[0], case[1], case[2], case[3], case[4], case[5], case[6])) found = True break except Exception: pass try: ans = calculate(case[0], case[1], calculate(calculate(case[2], case[3], case[4]), case[5], case[6])) if ans == 24: print("%d %s ( ( %d %s %d ) %s %d ) = 24" % (case[0], case[1], case[2], case[3], case[4], case[5], case[6])) found = True break except Exception: pass try: ans = calculate(case[0], case[1], calculate(case[2], case[3], calculate(case[4], case[5], case[6]))) if ans == 24: print("%d %s ( %d %s ( %d %s %d ) ) = 24" % (case[0], case[1], case[2], case[3], case[4], case[5], case[6])) found = True break except Exception: pass if not found: print("No Solutions")
# 6231012021 (20) 19 (2021-02-21 13:43) def calc(num1, op, num2): num1=float(num1) num2=float(num2) if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r=math.e else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').strip() nums=nums.split() cases=generate_all_combinations(nums,'+-*/') for e in cases: s1=calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6]) s2=calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6]) s3=calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6])) s4=calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6])) s5=calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6]))) if s1==24: ans='('+' '+'('+' '+e[0]+' '+e[1]+' '+e[2]+' '+')'+' '+e[3]+' '+e[4]+' '+')'+' '+e[5]+' '+e[6] print(ans,'=','24') break if s2==24: ans='('+' '+e[0]+' '+e[1]+' '+'('+' '+e[2]+' '+e[3]+' '+e[4]+' '+')'+' '+')'+' '+e[5]+' '+e[6] print(ans,'=','24') break if s3==24: ans='('+' '+e[0]+' '+e[1]+' '+e[2]+' '+')'+' '+e[3]+' '+'('+' '+e[4]+' '+e[5]+' '+e[6]+' '+')' print(ans,'=','24') break if s4==24: ans=e[0]+' '+e[1]+' '+'('+' '+'('+' '+e[2]+' '+e[3]+' '+e[4]+' '+')'+' '+e[5]+' '+e[6]+' '+')' print(ans,'=','24') break if s5==24: ans=e[0]+' '+e[1]+' '+'('+' '+e[2]+' '+e[3]+' '+'('+' '+e[4]+' '+e[5]+' '+e[6]+' '+')'+' '+')' print(ans,'=','24') break all_sol=[s1,s2,s3,s4,s5] c=0 for i in all_sol: if i!=24: c+=1 if c==5: print('No Solutions') ...
# 6231019521 (19.82) 20 (2021-02-22 15:00) def calc(num1,op,num2): num1=float(num1) num2=float(num2) if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/': if num2==0: r=math.e else: r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').strip() n=nums.split() ... cases = generate_all_combinations(n,'+-*/') for i in cases: a=calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) b=calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) c=calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) d=calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) e=calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) if a==24: print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'= 24') break if b==24: print('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'= 24') break if c==24: print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','= 24') break if d==24: print(i[0],i[1],'( (',i[2],i[3],i[4],')',i[5],i[6],')','= 24') break if e==24: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],') )','= 24') break total=[a,b,c,d,e] y=0 for z in total: if z!=24: y+=1 if y==5: print('No Solution ')
# 6231205921 (14) 21 (2021-02-22 20:17) def calc(num1,op,num2) : num1 = int(num1) num2 = int(num2) if op == '+' : t = num1 + num2 elif op == '-' : t = num1 - num2 elif op == '*' : t = num1 * num2 elif op == '/' : if num2 == 0 : t = 10**-10 else : t = num1 / num2 return t #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split() cases = generate_all_combinations( a, '+-*/' ) d = "" for k in cases : total1 = calc(calc(calc(k[0],k[1],k[2]),k[3],k[4]),k[5],k[6]) total2 = calc(calc(k[0],k[1],calc(k[2],k[3],k[4])),k[5],k[6]) total3 = calc(calc(k[0],k[1],k[2]),k[3],calc(k[4],k[5],k[6])) total4 = calc(k[0],k[1],calc(calc(k[2],k[3],k[4]),k[5],k[6])) total5 = calc(k[0],k[1],calc(k[2],k[3],calc(k[4],k[5],k[6]))) if total1 == 24 : d = "one" break elif total2 == 24 : d = "two" break elif total3 == 24 : d = "three" break elif total4 == 24 : d = "four" break elif total5 == 24 : d = "five" break if d == "one" : print("( (",k[0],k[1],k[2],")",k[3],k[4],")",k[5],k[6],"= 24") elif d == "two" : print("(",k[0],k[1],"(",k[2],k[3],k[4],") )",k[5],k[6],"= 24") elif d == "three" : print("(",k[0],k[1],k[2],")",k[3],"(",k[4],k[5],k[6],")","= 24") elif d == "four" : print(k[0],k[1],"( (",k[2],k[3],k[4],")",k[5],k[6],")","= 24") elif d == "five" : print(k[0],k[1],"(",k[2],k[3],"(",k[4],k[5],k[6],") )","= 24") else : print("No Solutions")
# 6231207121 (20) 22 (2021-02-21 15:00) #my Function def calc(a, b, op) : if op == "+" : R = a+b elif op == "-" : R = a-b elif op == "*" : R = a*b elif op == "/" : if b != 0 : R = a/b else : R = 0 return R def Type1() : return calc(calc(calc(num1, num2, op1), num3, op2), num4, op3) def Type2() : return calc(calc(num1, calc(num2, num3, op2), op1), num4, op3) def Type3() : return calc(calc(num1, num2, op1), calc(num3, num4, op3), op2) def Type4() : return calc(num1, calc(calc(num2, num3, op2), num4, op3), op1) def Type5() : return calc(num1, calc(num2, calc(num3, num4, op3), op2), op1) #--------------------------------------------------------- nums = input('Enter 4 integers: ') lnum = [int(e) for e in nums.split()] cases = generate_all_combinations( lnum, '+-*/' ) #my Code Calculation, This is very hard problem! Check24 = True for i in range(len(cases)) : num1 = cases[i][0] num2 = cases[i][2] num3 = cases[i][4] num4 = cases[i][6] op1 = cases[i][1] op2 = cases[i][3] op3 = cases[i][5] while Check24 == True : if Type1() == 24 : Check24 = False print("(","(",str(num1),op1,str(num2),")",op2,str(num3),")",op3,str(num4),"= 24") break elif Type2() == 24 : Check24 = False print("(",str(num1),op1,"(",str(num2),op2,str(num3),")",")",op3,str(num4),"= 24") break elif Type3() == 24 : Check24 = False print("(",str(num1),op1,str(num2),")",op2,"(",str(num3),op3,str(num4),")","= 24") break elif Type4() == 24 : Check24 = False print(str(num1),op1,"(","(",str(num2),op2,str(num3),")",op3,str(num4),")","= 24") break elif Type5() == 24 : Check24 = False print(str(num1),op1,"(",str(num2),op2,"(",str(num3),op3,str(num4),")",")","= 24") break else : break if Check24 == False : break else : print("No Solutions")
# 6231213921 (18.2) 23 (2021-02-22 21:25) def calc(num1,op,num2): if op == '+': r = num1+num2 elif op == '-': r = num1-num2 elif op == '*': r = num1*num2 elif op == '/': if num2 == 0: r = math.inf else: r = num1/num2 return(r) #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations([int(i) for i in nums.split() ] ,'+-*/') ans = "" for i in cases: r = calc(int(i[0]),i[1],int(i[2])) r = calc(r,i[3],int(i[4])) r = calc(r,i[5],int(i[6])) if r == 24: a = i ans = 'case1' break r = calc(int(i[2]),i[3],int(i[4])) r = calc(int(i[0]),i[1],r) r = calc(r,i[5],int(i[6])) if r == 24: a = i ans = 'case2' break r = calc(int(i[0]),i[1],int(i[2])) r = calc(r,i[3],calc(int(i[4]),i[5],int(i[6]))) if r == 24: a = i ans = 'case3' break r = calc(int(i[2]),i[3],int(i[4])) r = calc(r,i[5],int(i[6])) r = calc(int(i[0]),i[1],r) if r == 24: a = i ans = 'case4' break r = calc(int(i[4]),i[5],int(i[6])) r = calc(int(i[2]),i[3],r) r = calc(int(i[0]),i[1],r) if r == 24: a = i ans = 'case5' break if ans == 'case1': print('(('+str(a[0])+a[1]+str(a[2])+')'+a[3]+str(a[4])+')'+a[5]+str(a[6])+'=24') elif ans == 'case2': print('('+str(a[0])+a[1]+'('+str(a[2])+a[3]+str(a[4])+'))'+a[5]+str(a[6])+'=24') elif ans == 'case3': print('('+str(a[0])+a[1]+str(a[2])+')'+a[3]+'('+str(a[4])+a[5]+str(a[6])+')'+'=24') elif ans == 'case4': print(str(a[0])+a[1]+'(('+str(a[2])+a[3]+str(a[4])+')'+a[5]+str(a[6])+')'+'=24') elif ans == 'case5': print(str(a[0])+a[1]+'('+str(a[2])+a[3]+'('+str(a[4])+a[5]+str(a[6])+'))'+'=24') else: print('No Solutions')
# 6231214521 (20) 24 (2021-02-22 21:34) def calc(num1,op,num2): num1 = float(num1) num2 = float(num2) if op == "+": r = (num1) + (num2) elif op == "-": r = (num1) - (num2) elif op == "*": r = (num1) * (num2) elif op == "/": if num2 == 0: r = 10*10000 else: r =(num1)/(num2) return r def one(cases): x1 = calc(str(e[0]),str(e[1]),str(e[2])) x2 = calc(str(x1),str(e[3]),str(e[4])) x3 = calc(str(x2),str(e[5]),str(e[6])) return x3 def two(cases): x1 = calc(str(e[2]),str(e[3]),str(e[4])) x2 = calc(str(e[0]),str(e[1]),str(x1)) x3 = calc(str(x2),str(e[5]),str(e[6])) return x3 def three(cases): x1 = calc(str(e[0]),str(e[1]),str(e[2])) x2 = calc(str(e[4]),str(e[5]),str(e[6])) x3 = calc(str(x1),str(e[3]),str(x2)) return x3 def four(cases): x1 = calc(str(e[2]),str(e[3]),str(e[4])) x2 = calc(str(x1),str(e[5]),str(e[6])) x3 = calc(str(e[0]),str(e[1]),str(x2)) return x3 def five(cases): x1 = calc(str(e[4]),str(e[5]),str(e[6])) x2 = calc(str(e[2]),str(e[3]),str(x1)) x3 = calc(str(e[0]),str(e[1]),str(x2)) return x3 #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( nums.split(), '+-*/' ) pp = 0 for e in cases: if one(e) == 24: pp = "1" break elif two(e) == 24: pp = "2" break elif three(e) == 24: pp = "3" break elif four(e) == 24: pp = "4" break elif five(e) == 24: pp = "5" break if pp == "1": print("(","(",e[0],e[1],e[2],")",e[3],e[4],")",e[5],e[6], " = 24") elif pp =="2": print("(",e[0],e[1],"(",e[2],e[3],e[4],")",")",e[5],e[6]," = 24") elif pp =="3": print("(",e[0],e[1],e[2],")",e[3],"(",e[4],e[5],e[6],")"," = 24") elif pp =="4": print(e[0],e[1],"(","(",e[2],e[3],e[4],")",e[5],e[6],")"," = 24") elif pp =="5": print(e[0],e[1],"(",e[2],e[3],"(",e[4],e[5],e[6],")",")"," = 24") else: print("No Solutions")
# 6231220221 (19.6) 25 (2021-02-22 20:40) def calc(num1,op,num2): if op == '+': r = num1+num2 elif op == '-': r = num1-num2 elif op == '*': r = num1*num2 elif op == '/': if num2 == 0: r = 1000000000 else: r = num1/num2 return(r) #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations( nums, '+-*/' ) ans = "wow" for a in cases: r = calc(int(a[0]),a[1],int(a[2])) r = calc(r,a[3],int(a[4])) r = calc(r,a[5],int(a[6])) if r == 24: x = a ans = 'type1' break r = calc(int(a[2]),a[3],int(a[4])) r = calc(int(a[0]),a[1],r) r = calc(r,a[5],int(a[6])) if r == 24: x = a ans = 'type2' break r = calc(int(a[0]),a[1],int(a[2])) r = calc(r,a[3],calc(int(a[4]),a[5],int(a[6]))) if r == 24: x = a ans = 'type3' break r = calc(int(a[2]),a[3],int(a[4])) r = calc(r,a[5],int(a[6])) r = calc(int(a[0]),a[1],r) if r == 24: x = a ans = 'type4' break r = calc(int(a[4]),a[5],int(a[6])) r = calc(int(a[2]),a[3],r) r = calc(int(a[0]),a[1],r) if r == 24: x = a ans = 'type5' break if ans == 'type1': print('( ( '+x[0]+' '+x[1]+' '+x[2]+' '+')'+' '+x[3]+' '+x[4]+' '+')'+' '+x[5]+' '+x[6]+' '+'= 24') elif ans == 'type2': print('('+' '+x[0]+' '+x[1]+' '+'('+' '+x[2]+' '+x[3]+' '+x[4]+' '+') )'+' '+x[5]+' '+x[6]+' '+'= 24') elif ans == 'type3': print('('+' '+x[0]+' '+x[1]+' '+x[2]+' '+')'+' '+x[3]+' '+'('+' '+x[4]+' '+x[5]+' '+x[6]+' '+')'+' '+'= 24') elif ans == 'type4': print(x[0]+' '+x[1]+' '+'(('+' '+x[2]+' '+x[3]+' '+x[4]+' '+')'+' '+x[5]+' '+x[6]+' '+')'+' '+'= 24') elif ans == 'type5': print(x[0]+' '+x[1]+' '+'('+' '+x[2]+' '+x[3]+' '+'('+' '+x[4]+' '+x[5]+' '+x[6]+' '+'))'+' '+'= 24') else: print('No Solutions')
# 6231222521 (20) 26 (2021-02-21 21:25) def calc(num1, op, num2) : if op == "+" : return num1+num2 elif op == "-" : return num1-num2 elif op == "*" : return num1*num2 elif op == "/" : if num2 != 0 : return num1/num2 else : return -9999999 #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() nums = [int(e) for e in nums] cases = generate_all_combinations(nums , '+-*/' ) notFounded = True for c in cases : x1 = (calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6])) x2 = (calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6])) x3 = (calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6]))) x4 = (calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6]))) x5 = (calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6])))) if abs(x1-24) <= 0.000001 : print("(","(",c[0],c[1],c[2],")",c[3],c[4],")",c[5],c[6],"= 24") notFounded = False break elif abs(x2-24) <= 0.000001 : print("(",c[0],c[1],"(",c[2],c[3],c[4],")",")",c[5],c[6],"= 24") notFounded = False break elif abs(x3-24) <= 0.000001 : print("(",c[0],c[1],c[2],")",c[3],"(",c[4],c[5],c[6],")","= 24") notFounded = False break elif abs(x4-24) <= 0.000001 : print(c[0],c[1],"(","(",c[2],c[3],c[4],")",c[5],c[6],")","= 24") notFounded = False break elif abs(x5-24) <= 0.000001 : print(c[0],c[1],"(",c[2],c[3],"(",c[4],c[5],c[6],")",")","= 24") notFounded = False break if notFounded == True : print("No Solutions")
# 6231223121 (15.8) 27 (2021-02-19 20:07) #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations( nums, '+-*/' ) for x in cases: if x[1]=='+': a=int(x[0])+int(x[2]) elif x[1]=='-': a=int(x[0])-int(x[2]) elif x[1]=='*': a=int(x[0])*int(x[2]) elif x[1]=='/': if x[2]=='0': break else: a=int(x[0])/int(x[2]) if x[3]=='+': b=a+int(x[4]) elif x[3]=='-': b=a-int(x[4]) elif x[3]=='*': b=a*int(x[4]) elif x[3]=='/': if x[4]=='0': break else: b=a/int(x[4]) if x[5]=='+': c=b+int(x[6]) elif x[3]=='-': c=b-int(x[6]) elif x[3]=='*': c=b*int(x[6]) elif x[4]=='/': if x[6]=='0': break else: c=b/int(x[6]) sum1=c if sum1!=24: if x[3]=='+': d=int(x[2])+int(x[4]) elif x[3]=='-': d=int(x[2])-int(x[4]) elif x[3]=='*': d=int(x[2])*int(x[4]) elif x[3]=='/': if x[4]=='0': break else: d=int(x[2])/int(x[4]) if x[1]=='+': e=int(x[0])+d elif x[1]=='-': e=int(x[0])-d elif x[1]=='*': e=int(x[0])*d elif x[1]=='/': if d==0: break else: e=int(x[0])/d if x[5]=='+': f=e+int(x[6]) elif x[5]=='-': f=e-int(x[6]) elif x[5]=='*': f=e*int(x[6]) elif x[5]=='/': if x[6]=='0': break else: f=e/int(x[6]) sum2=f else: print('(','(',x[0],x[1],x[2],')',x[3],x[4],')',x[5],x[6],'=','24') break if sum2!=24: if x[1]=='+': g=int(x[0])+int(x[2]) elif x[1]=='-': g=int(x[0])-int(x[2]) elif x[1]=='*': g=int(x[0])*int(x[2]) elif x[1]=='/': if x[2]=='0': break else: g=int(x[0])/int(x[2]) if x[5]=='+': h=int(x[4])+int(x[6]) elif x[5]=='-': h=int(x[4])-int(x[6]) elif x[5]=='*': h=int(x[4])*int(x[6]) elif x[5]=='/': if x[6]=='0': break else: h=int(x[4])/int(x[6]) if x[3]=='+': i=g+h elif x[3]=='-': i=g-h elif x[3]=='*': i=g*h elif x[3]=='/': if h==0: break else: i=g/h sum3=i else: print('(',x[0],x[1],'(',x[2],x[3],x[4],')',')',x[5],x[6],'=','24') break if sum3!=24: if x[3]=='+': j=int(x[2])+int(x[4]) elif x[3]=='-': j=int(x[2])-int(x[4]) elif x[3]=='*': j=int(x[2])*int(x[4]) elif x[3]=='/': if x[4]=='0': break else: j=int(x[2])/int(x[4]) if x[5]=='+': k=j+int(x[6]) elif x[5]=='-': k=j-int(x[6]) elif x[5]=='*': k=j*int(x[6]) elif x[5]=='/': if x[6]=='0': break else: k=j/int(x[6]) if x[1]=='+': l=int(x[0])+k elif x[1]=='-': l=int(x[0])-k elif x[1]=='*': l=int(x[0])*k elif x[1]=='/': if k==0: break else: l=int(x[0])/k sum4=l else: print('(',x[0],x[1],x[2],')',x[3],'(',x[4],x[5],x[6],')','=','24') break if sum4!=24: if x[5]=='+': m=int(x[4])+int(x[6]) elif x[5]=='-': m=int(x[4])-int(x[6]) elif x[5]=='*': m=int(x[4])*int(x[6]) elif x[5]=='/': if x[6]=='0': break else: m=int(x[4])/int(x[6]) if x[3]=='+': n=int(x[2])+m elif x[3]=='-': n=int(x[2])-m elif x[3]=='*': n=int(x[2])*m elif x[3]=='/': if m==0: break else: n=int(x[2])/m if x[1]=='+': o=int(x[0])+n elif x[1]=='-': o=int(x[0])-n elif x[1]=='*': o=int(x[0])*n elif x[1]=='/': if n==0: break else: o=int(x[0])/n sum5=o else: print(x[0],x[1],'(','(',x[2],x[3],x[4],')',x[5],x[6],')','=','24') break if sum5==24: print(x[0],x[1],'(',x[2],x[3],'(',x[4],x[5],x[6],')',')','=','24') if sum1!=24 and sum2!=24 and sum3!=24 and sum4!=24 and sum5!=24: print('No Solutions')
# 6231224821 28 (2021-02-22 23:58) def calc(num1,op,num2): num1 = float(num1) num2 = float(num2) if op == "+": r = (num1) + (num2) elif op == "-": r = (num1) - (num2) elif op == "*": r = (num1) * (num2) elif op == "/": if num2 != 0: r = (num1)/(num2) else: r =10*(10**4) return r def c1(c): x1 = calc(str(n[0]),str(n[1]),str(n[2])) x2 = calc(str(x1),str(n[3]),str(n[4])) x3 = calc(str(x2),str(n[5]),str(n[6])) return x3 def c2(c): x1 = calc(str(n[2]),str(n[3]),str(n[4])) x2 = calc(str(n[0]),str(n[1]),str(x1)) x3 = calc(str(x2),str(n[5]),str(n[6])) return x3 def c3(c): x1 = calc(str(n[0]),str(n[1]),str(n[2])) x2 = calc(str(n[4]),str(n[5]),str(n[6])) x3 = calc(str(x1),str(n[3]),str(x2)) return x3 def c4(c): x1 = calc(str(n[2]),str(n[3]),str(n[4])) x2 = calc(str(x1),str(n[5]),str(n[6])) x3 = calc(str(n[0]),str(n[1]),str(x2)) return x3 def c5(c): x1 = calc(str(n[4]),str(n[5]),str(n[6])) x2 = calc(str(n[2]),str(n[3]),str(x1)) x3 = calc(str(n[0]),str(n[1]),str(x2)) return x3 #--------------------------------------------------------- nums = input('Enter 4 integers: ') c = generate_all_combinations( nums.split(), '+-*/' ) k = 0 for n in c: if c1(n) == 24: k = "1" break elif c2(n) == 24: k = "2" break elif c3(n) == 24: k = "3" break elif c4(n) == 24: k = "4" break elif c5(n) == 24: k = "5" break if k == "1": print("(","(",n[0],n[1],n[2],")",n[3],n[4],")",n[5],n[6], " = 24") elif k =="2": print("(",n[0],n[1],"(",n[2],n[3],n[4],")",")",n[5],n[6]," = 24") elif k =="3": print("(",n[0],n[1],n[2],")",n[3],"(",n[4],n[5],n[6],")"," = 24") elif k =="4": print(n[0],n[1],"(","(",n[2],n[3],n[4],")",n[5],n[6],")"," = 24") elif k =="5": print(n[0],n[1],"(",n[2],n[3],"(",n[4],n[5],n[6],")",")"," = 24") else: print("No Solutions")
# 6231510221 (20) 29 (2021-02-22 22:28) def calc(num1, op, num2): num1 = float(num1) num2 = float(num2) if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = 10^20 else : r = num1 / num2 return r nums = input('Enter 4 integers: ') cases = generate_all_combinations(nums.split(), '+-*/' ) exit = 0 for eq in cases: ans = calc(calc(calc(eq[0],eq[1],eq[2]),eq[3],eq[4]),eq[5],eq[6]) if ans == 24: exit = 1 break ans = calc(calc(eq[0],eq[1],calc(eq[2],eq[3],eq[4])),eq[5],eq[6]) if ans == 24: exit = 2 break ans = calc(calc(eq[0],eq[1],eq[2]),eq[3],calc(eq[4],eq[5],eq[6])) if ans == 24: exit = 3 break ans = calc(eq[0],eq[1],calc(calc(eq[2],eq[3],eq[4]),eq[5],eq[6])) if ans == 24: exit = 4 break ans = calc(eq[0],eq[1],calc(eq[2],eq[3],calc(eq[4],eq[5],eq[6]))) if ans == 24: exit = 5 break if exit == 1: print( '(' , '(' , eq[0] , eq[1] , eq[2] , ')' , eq[3] , eq[4] , ')' , eq[5] , eq[6] , '= 24') elif exit == 2: print( '(' , eq[0] , eq[1] , '(' , eq[2] , eq[3] , eq[4] , ')' , ')' , eq[5] , eq[6] , '= 24') elif exit == 3: print( '(' , eq[0] , eq[1] , eq[2] , ')' , eq[3] , '(' , eq[4] , eq[5] , eq[6] , ')' , '= 24') elif exit == 4: print(eq[0] , eq[1] , '(' , '(' , eq[2] , eq[3] , eq[4] , ')' , eq[5] , eq[6] , ')' , '= 24') elif exit == 5: print(eq[0] , eq[1] , '(' , eq[2] , eq[3] , '(' , eq[4] , eq[5] , eq[6] , ')' , ')' , '= 24') else: print('No Solutions')
# 6231511921 (20) 30 (2021-02-21 22:40) def calc(num1, op, num2): if op == '+': r = num1+num2 elif op == '-': r = num1-num2 elif op == '*': r = num1*num2 elif op == '/': if num2==0: r = 999997899 else: r = num1/num2 return r def is_f(n1,o1,n2,o2,n3,o3,n4): a = calc(calc(calc(n1,o1,n2),o2,n3),o3,n4) b = calc(calc(n1,o1,calc(n2,o2,n3)),o3,n4) c = calc(calc(n1,o1,n2),o2,calc(n3,o3,n4)) d = calc(n1,o1,calc(calc(n2,o2,n3),o3,n4)) e = calc(n1,o1,calc(n2,o2,calc(n3,o3,n4))) if a == 24: return "( ( {} {} {} ) {} {} ) {} {}".format(n1,o1,n2,o2,n3,o3,n4) elif b == 24: return "( {} {} ( {} {} {} ) ) {} {}".format(n1,o1,n2,o2,n3,o3,n4) elif c == 24: return "( {} {} {} ) {} ( {} {} {} )".format(n1,o1,n2,o2,n3,o3,n4) elif d == 24: return "{} {} ( ( {} {} {} ) {} {} )".format(n1,o1,n2,o2,n3,o3,n4) elif e == 24: return "{} {} ( {} {} ( {} {} {} ) )".format(n1,o1,n2,o2,n3,o3,n4) return None def f(nums): a = nums.split() b = [] for i in a: b.append(int(i)) all_c = generate_all_combinations(b, '+-*/') for i in all_c: n1,o1,n2,o2,n3,o3,n4 = i[0],i[1],i[2],i[3],i[4],i[5],i[6] if is_f(n1,o1,n2,o2,n3,o3,n4) != None: return is_f(n1,o1,n2,o2,n3,o3,n4) + ' = 24' return 'No Solutions' #--------------------------------------------------------- nums = input('Enter 4 integers: ') print(f(nums))
# 6231707621 (20) 31 (2021-02-19 12:08) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': r = num1 / num2 return r def result(cases): for i in range(len(cases)): try: found=False #1------> ( ( 1 + 2 ) + 3 ) + 4 r11=calc(cases[i][0],cases[i][1],cases[i][2]) r21=calc(r11,cases[i][3],cases[i][4]) r31=calc(r21,cases[i][5],cases[i][6]) #2------> ( 1 + ( 2 + 3 ) ) + 4 r12=calc(cases[i][2],cases[i][3],cases[i][4]) r22=calc(cases[i][0],cases[i][1],r12) r32=calc(r22,cases[i][5],cases[i][6]) #3------> ( 1 + 2 ) + ( 3 + 4 ) r13=calc(cases[i][0],cases[i][1],cases[i][2]) r23=calc(cases[i][4],cases[i][5],cases[i][6]) r33=calc(r13,cases[i][3],r23) #4------> 1 + ( ( 2 + 3 ) + 4 ) r14=calc(cases[i][2],cases[i][3],cases[i][4]) r24=calc(r14,cases[i][5],cases[i][6]) r34=calc(cases[i][0],cases[i][1],r24) #5------> 1 + ( 2 + ( 3 + 4 ) ) r15=calc(cases[i][4],cases[i][5],cases[i][6]) r25=calc(cases[i][2],cases[i][3],r15) r35=calc(cases[i][0],cases[i][1],r25) #1------> ( ( 1 + 2 ) + 3 ) + 4 if r31==24: print("( (",cases[i][0],cases[i][1]\ ,cases[i][2],")",cases[i][3],cases[i][4],")",\ cases[i][5],cases[i][6],"=","24") found=True break #2------> ( 1 + ( 2 + 3 ) ) + 4 elif r32==24: print("(",cases[i][0],cases[i][1]\ ,"(",cases[i][2],cases[i][3],cases[i][4],") )",\ cases[i][5],cases[i][6],"=","24") found=True break #3------> ( 1 + 2 ) + ( 3 + 4 ) elif r33==24: print("(",cases[i][0],cases[i][1]\ ,cases[i][2],")",cases[i][3],"(",cases[i][4],\ cases[i][5],cases[i][6],")","=","24") found=True break #4------> 1 + ( ( 2 + 3 ) + 4 ) elif r34==24: print(cases[i][0],cases[i][1],"( ("\ ,cases[i][2],cases[i][3],cases[i][4],")",\ cases[i][5],cases[i][6],")","=","24") found=True break #5------> 1 + ( 2 + ( 3 + 4 ) ) elif r35==24: print(cases[i][0],cases[i][1],"(",\ cases[i][2],cases[i][3],"(",cases[i][4],\ cases[i][5],cases[i][6],") )","=","24") found=True break except ZeroDivisionError: pass if found==False: print("No Solutions") #--------------------------------------------------------- nums = input('Enter 4 integers: ') num1=nums.split() list=[] for e in num1: list.append(int(e)) cases = generate_all_combinations( list, '+-*/' ) result(cases)
# 6231709921 (20) 32 (2021-02-19 00:42) def calc(num1, op, num2): num1=float(num1) num2=float(num2) if op == '+': r = num1+num2 elif op == '-': r = num1-num2 elif op == '*': r = num1*num2 elif op == '/': r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [str(e) for e in nums.split()] aws = '' cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)) : try : if calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6])==24 : print('( (',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],'= 24') aws+='1' break except ZeroDivisionError : pass try : if calc(calc(cases[i][0],cases[i][1],(calc(cases[i][2],cases[i][3],cases[i][4]))),cases[i][5],cases[i][6])==24 : print('(',cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],cases[i][4],') )',cases[i][5],cases[i][6],'= 24') aws+='2' break except ZeroDivisionError : pass try : if calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))==24 : print('(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')','= 24') aws+='3' break except ZeroDivisionError : pass try : if calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6]))==24 : print(cases[i][0],cases[i][1],'( (',cases[i][2],cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],')','= 24') aws+='4' break except ZeroDivisionError : pass try : if calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])))==24 : print(cases[i][0],cases[i][1],'( ',cases[i][2],cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],') )','= 24') aws+='5' break except ZeroDivisionError : pass else : aws+='' if aws=='' : print('No Solutions')
# 6330170421 (20) 33 (2021-02-18 14:01) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': if num2 == 0: num2 = 1 r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nl = nums.split() cases = generate_all_combinations( nl, '+-*/' ) i = 0 for i in range(len(cases)): x1 = int(cases[i][0]) x2 = int(cases[i][2]) x3 = int(cases[i][4]) x4 = int(cases[i][6]) op1 = cases[i][1] op2 = cases[i][3] op3 = cases[i][5] a1 = '('+' ( '+str(x1)+' '+str(op1)+' '+str(x2)+' ) '+str(op2)+' '+str(x3)+' ) '+str(op3)+' '+str(x4)+' = ' s1 = calc(calc(calc(x1,op1,x2),op2,x3),op3,x4) a2 = '( '+str(x1)+' '+str(op1)+' ( '+str(x2)+' '+str(op2)+' '+str(x3)+' ) ) '+str(op3)+' '+str(x4)+' = ' s2 = calc(calc(x1,op1,calc(x2,op2,x3)),op3,x4) a3 = '( '+str(x1)+' '+str(op1)+' '+str(x2)+' ) '+str(op2)+' ( '+str(x3)+' '+str(op3)+' '+str(x4)+' ) '+'= ' s3 = calc(calc(x1,op1,x2),op2,calc(x3,op3,x4)) a4 = str(x1)+' '+str(op1)+' ( ( '+str(x2)+' '+str(op2)+' '+str(x3)+' ) '+str(op3)+' '+str(x4)+' ) '+'= ' s4 = calc(x1,op1,calc(calc(x2,op2,x3),op3,x4)) a5 = str(x1)+' '+str(op1)+' ( '+str(x2)+' '+str(op2)+' ( '+str(x3)+' '+str(op3)+' '+str(x4)+' ) ) '+'= ' s5 = calc(x1,op1,calc(x2,op2,calc(x3,op3,x4))) if s1 == 24: print(a1+str(int(s1))) break elif s2 == 24: print(a2+str(int(s2))) break elif s3 == 24: print(a3+str(int(s3))) break elif s4 == 24: print(a4+str(int(s4))) break elif s5 == 24: print(a5+str(int(s5))) break i += 1 else : print('No Solutions')
# 6330171021 (20) 34 (2021-02-22 20:39) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-' : r = num1 - num2 elif operation == '*' : r = num1 * num2 elif operation == '/' : if num2 == 0: r = math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() nums = list(map(int,nums)) cases = generate_all_combinations([nums[0],nums[1],nums[2],nums[3]],'+-*/') for n in cases: answer1 = calc(n[0],n[1],n[2]) answer1 = calc(answer1,n[3],n[4]) answer1 = calc(answer1,n[5],n[6]) if answer1 == 24: print('(','(',n[0],n[1],n[2],')',n[3],n[4],')',n[5],n[6],'=','24') break answer2 = calc(n[2],n[3],n[4]) answer2 = calc(n[0],n[1],answer2) answer2 = calc(answer2,n[5],n[6]) if answer2 == 24: print('(',n[0],n[1],'(',n[2],n[3],n[4],')',')',n[5],n[6],'=','24') break answer3 = calc(n[0],n[1],n[2]) ans = calc(n[4],n[5],n[6]) answer3 =calc(answer3,n[3],ans) if answer3 == 24: print('(',n[0],n[1],n[2],')',n[3],'(',n[4],n[5],n[6],')','=','24') break answer4 = calc(n[2],n[3],n[4]) answer4 = calc(answer4,n[5],n[6]) answer4 = calc(n[0],n[1],answer4) if answer4 == 24: print(n[0],n[1],'(','(',n[2],n[3],n[4],')',n[5],n[6],')','=','24') break answer5 = calc(n[4],n[5],n[6]) answer5 = calc(n[2],n[3],answer5) answer5 = calc(n[0],n[1],answer5) if answer5 == 24: print(n[0],n[1],'(',n[2],n[3],'(',n[4],n[5],n[6],')',')','=','24') break if answer1 != 24 and answer2 != 24 and answer3 != 24 and answer4 != 24 and answer5 != 24 : print('No Solutions')
# 6330172721 (20) 35 (2021-02-19 11:01) def calc(a,b,opera): if opera == '+' : return a+b if opera == '-' : return a-b if opera == '*' : return a*b if opera == '/' : if b == 0 : return -9999 return a/b #--------------------------------------------------------- nums = input('Enter 4 integers: ') nm_lst = [int(i) for i in nums.split()] cases = generate_all_combinations( nm_lst, '+-*/' ) for i in range(len(cases)) : # sol1 : first = calc(cases[i][0],cases[i][2],cases[i][1]) second = calc(first,cases[i][4],cases[i][3]) third = calc(second,cases[i][6],cases[i][5]) sol = 1 if third == 24 : print("(","(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],"=",24) break # sol2 : first = calc(cases[i][2],cases[i][4],cases[i][3]) second = calc(cases[i][0],first,cases[i][1]) third = calc(second,cases[i][6],cases[i][5]) sol = 2 if third == 24 : print("(",cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],cases[i][4],")",")",cases[i][5],cases[i][6],"=",24) break # sol3 : first = calc(cases[i][0],cases[i][2],cases[i][1]) second = calc(cases[i][4],cases[i][6],cases[i][5]) third = calc(first,second,cases[i][3]) sol = 3 if third == 24 : print("(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")","=",24) break # sol4 : first = calc(cases[i][2],cases[i][4],cases[i][3]) second = calc(first,cases[i][6],cases[i][5]) third = calc(cases[i][0],second,cases[i][1]) sol = 4 if third == 24 : print(cases[i][0],cases[i][1],"(","(",cases[i][2],cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],")","=",24) break # sol5 : first = calc(cases[i][4],cases[i][6],cases[i][5]) second = calc(cases[i][2],first,cases[i][3]) third = calc(cases[i][0],second,cases[i][1]) sol = 5 if third == 24 : print(cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")",")","=",24) break if i == len(cases)-1 : print("No Solutions") sol = 0
# 6330173321 (12.06) 36 (2021-02-19 20:14) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 !=0 : r = num1 / num2 else : r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split(' ') cases = generate_all_combinations( a, '+-*/' ) ans = 0 for i in range(len(cases)): if i > len(cases) : break else : b = cases[i] num1 = int(b[0]) op1 = b[1] num2 = int(b[2]) op2 = b[3] num3 = int(b[4]) op3 = b[5] num4 = int(b[6]) ans = calc(calc((calc(num1,op1,num2)),op2,num3),op3,num4) if ans == 24 : num1 = str(num1) op1 = str(op1) num2 = str(num2) op2 = str(op2) num3 = str(num3) op3 = str(op3) num4 = str(num4) print('( ( '+num1+' '+op1+' '+num2+' ) '+op2+' '+num3+' ) '+op3+' '+num4+' = 24') break elif ans != 24 : ans = calc(calc(num1,op1,calc(num2,op2,num3)),op3,num4) if ans == 24 : num1 = str(num1) op1 = str(op1) num2 = str(num2) op2 = str(op2) num3 = str(num3) op3 = str(op3) num4 = str(num4) print('( '+num1+' '+op1+' ( '+num2+' '+op2+' '+num3+' ) '+op3+' '+num4+' ) = 24') break elif ans != 24 : ans = calc(calc(num1,op1,num2),op2,calc(num3,op3,num4)) if ans == 24 : num1 = str(num1) op1 = str(op1) num2 = str(num2) op2 = str(op2) num3 = str(num3) op3 = str(op3) num4 = str(num4) print('( '+num1+' '+op1+' '+num2+' ) '+op2+' ( '+num3+' '+op3+' '+num4+' ) = 24') break elif ans != 24 : ans = calc(num1,op1,calc(calc(num2,op2,num3),op3,num4)) if ans == 24 : num1 = str(num1) op1 = str(op1) num2 = str(num2) op2 = str(op2) num3 = str(num3) op3 = str(op3) num4 = str(num4) print(num1+' '+op1+' ( ( '+num2+' '+op2+' '+num3+' ) '+o3+' '+num4+' ) = 24') break elif ans != 24 : ans = calc(num1,op1,calc(num2,op2,calc(num3,op3,num4))) if ans == 24 : num1 = str(num1) op1 = str(op1) num2 = str(num2) op2 = str(op2) num3 = str(num3) op3 = str(op3) num4 = str(num4) print(num1+' '+op1+' ( '+num2+' '+op2+' ( '+num3+' '+op3+' '+num4+' ) ) = 24') break if ans != 24 : print("No Solutions")
# 6330174021 (20) 37 (2021-02-20 18:26) def calc(num1, op, num2): if op == "+": return num1 + num2 elif op == "-": return num1 - num2 elif op == "*": return num1 * num2 elif op == "/": return num1 / num2 def find_sol(c): try: st1 = calc(c[0], c[1], c[2]) st2 = calc(st1, c[3], c[4]) res = calc(st2, c[5], c[6]) if res == 24: return f"( ( {c[0]} {c[1]} {c[2]} ) {c[3]} {c[4]} ) {c[5]} {c[6]}" except:pass try: st1 = calc(c[2], c[3], c[4]) st2 = calc(c[0], c[1], st1) res = calc(st2, c[5], c[6]) if res == 24: return f"( {c[0]} {c[1]} ( {c[2]} {c[3]} {c[4]} ) ) {c[5]} {c[6]}" except:pass try: st1 = calc(c[0], c[1], c[2]) st2 = calc(c[4], c[5], c[6]) res = calc(st1, c[3], st2) if res == 24: return f"( {c[0]} {c[1]} {c[2]} ) {c[3]} ( {c[4]} {c[5]} {c[6]} )" except:pass try: st1 = calc(c[2], c[3], c[4]) st2 = calc(st1, c[5], c[6]) res = calc(c[0], c[1], st2) if res == 24: return f"{c[0]} {c[1]} ( ( {c[2]} {c[3]} {c[4]} ) {c[5]} {c[6]} )" except:pass try: st1 = calc(c[4], c[5], c[6]) st2 = calc(c[2], c[3], st1) res = calc(c[0], c[1], st2) if res == 24: return f"{c[0]} {c[1]} ( {c[2]} {c[3]} ( {c[4]} {c[5]} {c[6]} ) )" except:pass #--------------------------------------------------------- nums = input('Enter 4 integers: ') lst_num = [int(i) for i in nums.split()] cases = generate_all_combinations( lst_num, '+-*/' ) for case in cases: ans = find_sol(case) if ans is not None: break if ans is None: print("No Solutions") else: print(ans + " = " + "24")
# 6330176221 (20) 38 (2021-02-19 23:21) def calc(num1, op, num2) : if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0 : r = 0 else : r = num1 / num2 return r #--------------------------------------------------------- k = 0 nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations(num_list, '+-*/' ) for i in range(len(cases)) : n = cases[i] num1, op1,num2, op2,num3, op3,num4 = n a = int(n[0]) b = int(n[2]) c = int(n[4]) d = int(n[6]) A = calc(calc(calc(a, op1, b), op2, c), op3, d) B = calc(calc(a, op1, calc(b, op2, c)), op3, d) C = calc(calc(a, op1, b), op2, calc(c, op3, d)) D = calc(a, op1, calc(calc(b, op2, c), op3, d)) E = calc(a, op1, calc(b, op2, calc(c, op3, d))) if A == 24 or B == 24 or C == 24 or D == 24 or E == 24 : k += 1 break if k > 0 : if A == 24 : F = '( ' + '( ' + str(a) + ' ' + str(op1) + ' ' + str(b) + ' ' + ') ' + str(op2) + ' ' + str(c) + ' ' + ') ' + str(op3) + ' ' + str(d) print(F, '= 24') elif B == 24 : G = '( ' + str(a) + ' ' + str(op1) + ' ' + '( ' + str(b) + ' ' + str(op2) + ' ' + str(c) + ' ' + ') ' + ') ' + str(op3) + ' ' + str(d) print(G, '= 24') elif C == 24 : H = '( ' + str(a) + ' ' + str(op1) + ' ' + str(b) + ' ) ' + str(op2) + ' ' + '( ' + str(c) + ' ' + str(op3) + ' ' + str(d) + ' )' print(H, '= 24') elif D == 24 : I = str(a) + ' ' + str(op1) + ' ( ' + '( ' + str(b) + ' ' + str(op2) + ' ' +str(c) + ' ) ' + str(op3) + ' ' + str(d) + ' )' print(I, '= 24') elif E == 24 : J = str(a) + ' ' + str(op1) + ' ( ' + str(b) + ' ' + str(op2) + ' ( ' + str(c) + ' ' + str(op3) + ' ' +str(d) + ' ) ' + ')' print(J, '= 24') else : print('No Solutions')
# 6330177921 (20) 39 (2021-02-19 20:25) def cal(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = float("inf") else: r = num1 / num2 return r def dis(num1, op1, num2, op2, num3, op3, num4): a = [0]*5 a[0] = cal(cal(cal(num1, op1, num2), op2, num3), op3, num4) a[1] = cal(cal(num1, op1, cal(num2,op2,num3)), op3, num4) a[2] = cal(cal(num1, op1, num2), op2, cal(num3, op3, num4)) a[3] = cal(num1, op1, cal(cal(num2, op2, num3), op3, num4)) a[4] = cal(num1, op1, cal(num2, op2, cal(num3, op3, num4))) return a #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() for i in range(4): nums[i] = int(nums[i]) cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)): y = dis(cases[i][0],cases[i][1],cases[i][2],cases[i][3],cases[i][4],cases[i][5],cases[i][6]) if 24 in y: break if i == len(cases)-1 and 24 not in y: i += 1 if i == len(cases): print("No Solutions") else: if y[0] == 24: print("( (",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],"= 24") elif y[1] == 24: print("(",cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],cases[i][4],") )",cases[i][5],cases[i][6],"= 24") elif y[2] == 24: print("(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")","= 24") elif y[3] == 24: print(cases[i][0],cases[i][1],"( (",cases[i][2],cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],")","= 24") elif y[4] == 24: print(cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],") )","= 24")
# 6330178521 (18.06) 40 (2021-02-22 00:43) #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() ... cases = generate_all_combinations( num_list, '+-*/' ) ... def calc(num1, op, num2): if num1 == 'none' or num2 == 'none': r='none' return r num1 = float(num1) num2 = float(num2) if op == '+': r = (num1) + (num2) elif op == '-': r = (num1) - (num2) elif op == '*': r = (num1) * (num2) elif op == '/' and num2 != 0: r = (num1) / (num2) else: r = 'none' return r for i in range(len(cases)): a = cases[i] s = calc(calc(calc(a[0],a[1],a[2]),a[3],a[4]),a[5],a[6]) if s ==24: print('(', '(', a[0], a[1], a[2], ')', a[3], a[4], ')', a[5], a[6], '=', '24') break s = calc(calc(a[0],a[1],(calc(a[2],a[3],a[4]))),a[5],a[6]) if s ==24: print('(', a[0], a[1], '(', a[2], a[3], a[4], ')', a[5], a[6], ')', '=', '24') break s = calc(calc(a[0],a[1],a[2]), a[3],(calc(a[4],a[5],a[6]))) if s ==24: print('(',a[0], a[1], a[2], ')', a[3], '(', a[4], a[5], a[6], ')', '=', '24') break s = calc(a[0],a[1],(calc(calc(a[2],a[3],a[4]),a[5],a[6]))) if s ==24: print(a[0], a[1], '(', '(', a[2], a[3], a[4], ')', a[5], a[6], ')', '=', '24') break s = calc(a[0],a[1],calc(a[2],a[3],calc(a[4],a[5],a[6]))) if s ==24: print(a[0], a[1], '(', a[2], a[3], '(', a[4], a[5], a[6], ')', ')', '=', '24') break else: i +=1 if i == (len(cases)): print('No Solutions')
# 6330179121 (14) 41 (2021-02-18 16:55) def calc(num1, op, num2): num1 = int(num1) num2 = int(num2) if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 else : if num2 == 0 : r = 99999 else : r = num1 / num2 return r def ans(x,case): if case == 1 : r = '( ( '+x[0]+' '+x[1]+' '+x[2]+' ) '+x[3]+' '+x[4]+' ) '+x[5]+' '+x[6] elif case == 2 : r = ' ( '+x[0]+' '+x[1]+' ( '+x[2]+' '+x[3]+' '+x[4]+' ) ) '+x[5]+' '+x[6] elif case == 3 : r = ' ( '+x[0]+' '+x[1]+' '+x[2]+' ) '+x[3]+' ( '+x[4]+' '+x[5]+' '+x[6]+' )' elif case == 4 : r = x[0]+' '+x[1]+' ( ( '+x[2]+' '+x[3]+' '+x[4]+' ) '+x[5]+' '+x[6]+' )' elif case == 5 : r = x[0]+' '+x[1]+' ( '+x[2]+' '+x[3]+' ( '+x[4]+' '+x[5]+' '+x[6]+' ) )' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) x = [] case = 0 for i in cases : if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24 : x = i case = 1 break elif calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) == 24 : x = i case = 2 break elif calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) == 24 : x = i case = 3 break elif calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) == 24 : x = i case = 4 break elif calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) == 24 : x = i case = 5 break if case == 0 : print('No Solutions') else: ans = ans(x,case) + ' = 24' print(ans)
# 6330180721 (20) 42 (2021-02-18 10:51) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1*num2 elif op == '/': if num2 != 0: r = num1/num2 else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: '); i = 0 num_lists = [int(e) for e in nums.split()] cases = generate_all_combinations( num_lists , '+-*/' ) for n in cases: if calc(calc(calc(n[0],n[1],n[2]),n[3],n[4]),n[5],n[6]) == 24: print('(','(',n[0],n[1],n[2],')',n[3],n[4],')',n[5],n[6],'=',24) break if calc(calc(n[0],n[1],calc(n[2],n[3],n[4])),n[5],n[6]) == 24: print('(',n[0],n[1],'(',n[2],n[3],n[4],')',')',n[5],n[6],'=',24) break if calc(calc(n[0],n[1],n[2]),n[3], calc(n[4],n[5],n[6])) == 24: print('(',n[0],n[1],n[2],')',n[3],'(',n[4],n[5],n[6],')','=',24) break if calc(n[0],n[1],calc(calc(n[2],n[3],n[4]),n[5],n[6])) == 24: print(n[0],n[1],'(','(',n[2],n[3],n[4],')',n[5],n[6],')','=',24) break if calc(n[0],n[1],calc(n[2],n[3],calc(n[4],n[5],n[6]))) == 24: print(n[0],n[1],'(',n[2],n[3],'(',n[4],n[5],n[6],')',')','=',24) break i+=1 if i == len(cases): print("No Solutions")
# 6330181321 (18) 43 (2021-02-18 22:01) def calc( num1,operation, num2 ): if operation == '+': r = num1 + num2 if operation == '-': r = num1 - num2 if operation == '*': r = num1 * num2 if operation == '/': if num2 != 0: r = num1 / num2 else: r=0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() nams = [int(nums[0]),int(nums[1]),int(nums[2]),int(nums[3])] cases = generate_all_combinations( nams, '+-*/') p=0 n=0 for x in cases: p = calc(calc( calc(x[0],x[1], x[2]) ,x[3],x[4]),x[5],x[6]) if p==24: print('('+' '+'('+' '+str(x[0])+' '+str(x[1])+' '+str(x[2])+' '+')'+' '+str(x[3])+' '+str(x[4])+' '+')'+' '+str(x[5])+' '+str(x[6])+' '+'='+' '+'24') break p= calc(calc(x[0],x[1],calc(x[2],x[3],x[4])),x[5],x[6]) if p==24: print('('+' '+str(x[0])+' '+str(x[1])+' '+'('+' '+str(x[2])+' '+str(x[3])+' '+str(x[4])+' '+')'+' '+')'+' '+str(x[5])+' '+str(x[6])+' '+'='+' '+'24') break p=calc(calc(x[0],x[1],x[2]),x[3],calc(x[4],x[5],x[6])) if p==24: print('(',str(x[0]),str(x[1]),str(x[2]),')',str(x[3]),'(',str(x[4]),str(x[5]),str(x[6]),')','=','24') break p=calc(x[0],x[1],calc(calc(x[2],x[3],x[4]),x[5],x[6])) if p==24: print(str(x[0]),str(x[1]),'(','(',str(x[2]),str(x[3]),str(x[4]),')',str(x[5]),strx[6]) break p=calc(x[0],x[1],calc(x[2],x[3],calc(x[4],x[5],x[6]))) if p==24: print(str(x[0]),str(x[1]),'(',str(x[2]),str(x[3]),'(',str(x[4]),str(x[5]),str(x[6]),')',')','=','24') break if p!=24: print('No Solutions')
# 6330182021 (13.8) 44 (2021-02-22 12:14) def calc(num1, op, num2): if op == "+": r = int(num1) + int(num2) elif op == "-": r = int(num1) - int(num2) elif op == "*": r = int(num1) * int(num2) elif op == "/": if int(num2) == 0: return 10000000 r = int(num1) / int(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') no = nums.split() ... ... cases = generate_all_combinations( no, '+-*/' ) ... for k in range (len(cases)): p = cases[k] if calc(calc(calc(p[0],p[1],p[2]),p[3],p[4]),p[5],p[6]) == 24: print("( (",p[0],p[1],p[2],")",p[3],p[4],")",p[5],p[6],"=",24) break elif calc(p[0],p[1],calc(calc(p[2],p[3],p[4]),p[5],p[6])) == 24: print(p[0],p[1],"(",p[2],p[3],p[4],")",p[5],p[6],"=",24) break elif calc(calc(p[0],p[1],calc(p[2],p[3],p[4])),p[5],p[6]) == 24: print("(",p[0],p[1],"(",p[2],p[3],p[4],") )",p[5],p[6],"=",24) break elif calc(p[0],p[1],calc(p[2],p[3],calc(p[4],p[5],p[6]))) == 24: print(p[0],p[1],"(",p[2],p[3],"(",p[4],p[5],p[6],") ) )","=",24) break elif calc(calc(p[0],p[1],p[2]),p[3],calc(p[4],p[5],p[6])) == 24: print("(",p[0],p[1],p[2],")",p[3],"(",p[4],p[5],p[6],")","=",24) break else: print("No Solutions")
# 6330183621 (20) 45 (2021-02-18 10:07) def cal(num1,op,num2): if op == '+': x=num1+num2 elif op == '-': x=num1-num2 elif op == '*': x=num1*num2 elif op == '/': if num2 != 0: x=num1/num2 else: x=99999999999999999999 return(x) def case_result(x): c=1 x1=cal(x[0],x[1],x[2]) x2=cal(x1,x[3],x[4]) x3=cal(x2,x[5],x[6]) if x3 != 24: c=2 x1=cal(x[2],x[3],x[4]) x2=cal(x[0],x[1],x1) x3=cal(x2,x[5],x[6]) if x3 != 24: c=3 x1=cal(x[0],x[1],x[2]) x2=cal(x[4],x[5],x[6]) x3=cal(x1,x[3],x2) if x3 != 24: c=4 x1=cal(x[2],x[3],x[4]) x2=cal(x1,x[5],x[6]) x3=cal(x[0],x[1],x2) if x3 != 24: c=5 x1=cal(x[4],x[5],x[6]) x2=cal(x[2],x[3],x1) x3=cal(x[0],x[1],x2) if x3 != 24: c=6 else: pass else: pass else: pass else: pass else: pass return(c) #--------------------------------------------------------- nums = input('Enter 4 integers: ') number_1 = nums.split() number = [] for e in range(len(number_1)): number.append(int(number_1[e])) cases = generate_all_combinations( number, '+-*/' ) c=6 t=0 while c==6 and t<len(cases): x=cases[t] c=case_result(x) t+=1 x=cases[t-1] if c==1: y='( ( '+str(x[0])+' '+x[1]+' '+str(x[2])+' ) '+x[3]+' '+str(x[4])+' ) '+x[5]+' '+str(x[6])+' = 24' elif c==2: y='( '+str(x[0])+' '+x[1]+' ( '+str(x[2])+' '+x[3]+' '+str(x[4])+' ) ) '+x[5]+' '+str(x[6])+' = 24' elif c==3: y='( '+str(x[0])+' '+x[1]+' '+str(x[2])+' ) '+x[3]+' ( '+str(x[4])+' '+x[5]+' '+str(x[6])+' )'+' = 24' elif c==4: y=str(x[0])+' '+x[1]+' ( ( '+str(x[2])+' '+x[3]+' '+str(x[4])+' ) '+x[5]+' '+str(x[6])+' ) '+' = 24' elif c==5: y=str(x[0])+' '+x[1]+' ( '+str(x[2])+' '+x[3]+' ( '+str(x[4])+' '+x[5]+' '+str(x[6])+' ) )'+' = 24' elif c==6: y='No Solutions' print(y)
# 6330184221 (20) 46 (2021-02-22 01:09) def calc(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) else : r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() a = generate_all_combinations( nums, '+-*/' ) s = ["","","","",""] c = 0 for i in range(len(a)) : try : s[0] = calc((calc(calc(a[i][0],a[i][1],a[i][2]),a[i][3],a[i][4])),a[i][5],a[i][6]) s[1] = calc(calc(a[i][0],a[i][1],calc(a[i][2],a[i][3],a[i][4])),a[i][5],a[i][6]) s[2] = calc(calc(a[i][0],a[i][1],a[i][2]),a[i][3],calc(a[i][4],a[i][5],a[i][6])) s[3] = calc(a[i][0],a[i][1],calc(calc(a[i][2],a[i][3],a[i][4]),a[i][5],a[i][6])) s[4] = calc(a[i][0],a[i][1],calc(a[i][2],a[i][3],calc(a[i][4],a[i][5],a[i][6]))) except ZeroDivisionError : pass if s[0] == 24 or s[1] == 24 or s[2] == 24 or s[3] == 24 or s[4] == 24 : try : s[0] = calc((calc(calc(a[i][0],a[i][1],a[i][2]),a[i][3],a[i][4])),a[i][5],a[i][6]) if s[0] == 24 : print('(', '(' , str(a[i][0]) , str(a[i][1]) , str(a[i][2]) , ')' , str(a[i][3]) , str(a[i][4]) , ')' , str(a[i][5]) , str(a[i][6]) , '=' , '24') break s[1] = calc(calc(a[i][0],a[i][1],calc(a[i][2],a[i][3],a[i][4])),a[i][5],a[i][6]) if s[1] == 24 : print('(', str(a[i][0]) , str(a[i][1]) ,'(', str(a[i][2]) , str(a[i][3]) , str(a[i][4]) , ')' ,')', str(a[i][5]) , str(a[i][6]) , '=' , '24') break s[2] = calc(calc(a[i][0],a[i][1],a[i][2]),a[i][3],calc(a[i][4],a[i][5],a[i][6])) if s[2] == 24 : print('(', str(a[i][0]) , str(a[i][1]) , str(a[i][2]) ,')', str(a[i][3]) ,'(', str(a[i][4]) , str(a[i][5]) , str(a[i][6]) ,')' , '=' , '24') break s[3] = calc(a[i][0],a[i][1],calc(calc(a[i][2],a[i][3],a[i][4]),a[i][5],a[i][6])) if s[3] == 24 : print(str(a[i][0]) , str(a[i][1]) ,'(','(', str(a[i][2]) , str(a[i][3]) , str(a[i][4]) ,')', str(a[i][5]) , str(a[i][6]) ,')', '=' , '24') break s[4] = calc(a[i][0],a[i][1],calc(a[i][2],a[i][3],calc(a[i][4],a[i][5],a[i][6]))) if s[4] == 24 : print(str(a[i][0]) , str(a[i][1]) ,'(', str(a[i][2]) , str(a[i][3]) ,'(', str(a[i][4]) , str(a[i][5]) , str(a[i][6]) ,')',')', '=' , '24') break except ZeroDivisionError : pass else : c += 1 if c == len(a) : print("No Solutions") break
# 6330185921 (12.8) 47 (2021-02-22 18:16) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1*num2 elif op == '/' and (num2 != 0): r = num1 / num2 elif op == '/' and num2 == 0: r=math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x=nums.split() cases = generate_all_combinations([int(x[0]),int(x[1]),int(x[2]),int(x[3])], '+-*/' ) for i in range (len(cases)): g = cases[i] g=calc((calc((calc(cases[i][0],cases[i][1],cases[i][2])),cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) if g == 24 : h=cases[i] print('(','(',str(h[0]),str(h[1]),str(h[2]),')',str(h[3]),str(h[4]),')',str(h[5]),str(h[6]),'=','24' ) break else: g = cases[i] g=calc((calc((calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][1],cases[i][0])),cases[i][5],cases[i][6]) if g == 24 : h=cases[i] print('(',h[0],h[1],'(',h[2],h[3],h[4],')',')',h[5],h[6]) break else: g = cases[i] g=g=calc((calc(cases[i][0],cases[i][1],cases[i][2])),cases[i][3],(calc(cases[i][4],cases[i][5],cases[i][6]))) if g == 24 : h=cases[i] print('(',str(h[0]),str(h[1]),str(h[2]),')',str(h[3]),'(',str(h[4]),str(h[5]),str(h[6]),')') break else: g = cases[i] g=calc(cases[i][0],cases[i][1],(calc((calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]))) if g == 24 : h=cases[i] print(h[0],h[1],'( (',h[2],h[3],h[4],')',h[5],h[6],')' ) break else: g = cases[i] calc(cases[i][0],cases[i][1],(calc(cases[i][2],cases[i][3],(calc(cases[i][4],cases[i][5],cases[i][6]))))) if g == 24 : h=cases[i] print(h[0],h[1],'(',h[2],h[3],'(',h[4],h[5],h[6],')',')') if g != 24: print('No Solutions')
# 6330186521 (20) 48 (2021-02-22 15:22) def cal(num1, op, num2): if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/': if num2 ==0: num2 = 19283.2821 r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... cases = generate_all_combinations( nums.split(), '+-*/' ) cr = [] for el in cases: cc = cal(cal(cal(int(el[0]),el[1],int(el[2])),el[3],int(el[4])),el[5],int(el[6])) if cc == 24: cr = el cr.insert(0,'(') cr.insert(1,'(') cr.insert(5,')') cr.insert(8,')') break cc = cal(cal(int(el[0]),el[1],int(el[2])),el[3],cal(int(el[4]),el[5],int(el[6]))) if cc == 24: cr = el cr.insert(0,'(') cr.insert(4,')') cr.insert(6,'(') cr.append(')') break cc = cal(int(el[0]),el[1],cal(int(el[2]),el[3],cal(int(el[4]),el[5],int(el[6])))) if cc == 24: cr = el cr.insert(2,'(') cr.insert(5,'(') cr.insert(9,')') cr.append(')') break cc = cal(int(el[0]),el[1],cal(cal(int(el[2]),el[3],int(el[4])),el[5],int(el[6]))) if cc == 24: cr = el cr.insert(2,'(') cr.insert(3,'(') cr.insert(7,')') cr.append(')') break cc = cal(cal(int(el[0]),el[1],cal(int(el[2]),el[3],int(el[4]))),el[5],int(el[6])) if cc == 24: cr = el cr.insert(0,'(') cr.insert(3,'(') cr.insert(7,')') cr.insert(8,')') break if cr == []: print('No Solutions') else: print(' '.join(cr),'= 24')
# 6330187121 (18) 49 (2021-02-19 16:14) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': r = num1 / num2 return r #--------------------------------------------------------- def gora1(e): #---(1+-*/2)----------------------------------------------- if e[1] == '+': ans = calc(e[0],'+',e[2]) elif e[1] == '-': ans = calc(e[0],'-',e[2]) elif e[1] == '*': ans = calc(e[0],'*',e[2]) else: ans = calc(e[0],'/',e[2]) #---((1+-*/2)+-*/3)---------------------------------------- if e[3] == '+': ans = calc(ans,'+',e[4]) elif e[3] == '-': ans = calc(ans,'-',e[4]) elif e[3] == '*': ans = calc(ans,'*',e[4]) else: ans = calc(ans,'/',e[4]) #---((1+-*/2)+-*/3)+3*/4----------------------------------- if e[5] == '+': ans = calc(ans,'+',e[6]) elif e[5] == '-': ans = calc(ans,'-',e[6]) elif e[5] == '*': ans = calc(ans,'*',e[6]) else: ans = calc(ans,'/',e[6]) return ans #-------------------------------------------------------------- def gora2(e): #---(2+-*/3)----------------------------------------------- if e[3] == '+': ans = calc(e[2],'+',e[4]) elif e[3] == '-': ans = calc(e[2],'-',e[4]) elif e[3] == '*': ans = calc(e[2],'*',e[4]) else: ans = calc(e[2],'/',e[4]) #---(1+-*/(2+-*/3))---------------------------------------- if e[1] == '+': ans = calc(e[0],'+',ans) elif e[1] == '-': ans = calc(e[0],'-',ans) elif e[1] == '*': ans = calc(e[0],'*',ans) else: if ans == 0: ans = 0 else: ans = calc(e[0],'/',ans) #---((1+-*/2)+-*/3)+-*/4----------------------------------- if e[5] == '+': ans = calc(ans,'+',e[6]) elif e[5] == '-': ans = calc(ans,'-',e[6]) elif e[5] == '*': ans = calc(ans,'*',e[6]) else: ans = calc(ans,'/',e[6]) return ans #-------------------------------------------------------------- def gora3(e): #---(1+-*/2)----------------------------------------------- if e[1] == '+': a = calc(e[0],'+',e[2]) elif e[1] == '-': a = calc(e[0],'-',e[2]) elif e[1] == '*': a = calc(e[0],'*',e[2]) else: a = calc(e[0],'/',e[2]) #---(3+-*/4)----------------------------------------------- if e[5] == '+': b = calc(e[4],'+',e[6]) elif e[5] == '-': b = calc(e[4],'-',e[6]) elif e[5] == '*': b = calc(e[4],'*',e[6]) else: b = calc(e[4],'/',e[6]) #---(1+-*/2)+-*/(3+-*/4)------------------------------------ if e[3] == '+': ans = calc(a,'+',b) elif e[3] == '-': ans = calc(a,'-',b) elif e[3] == '*': ans = calc(a,'*',b) else: if b == 0: ans = 0 else: ans = calc(a,'/',b) return ans #-------------------------------------------------------------- def gora4(e): #---(2+-*/3)----------------------------------------------- if e[3] == '+': ans = calc(e[2],'+',e[4]) elif e[3] == '-': ans = calc(e[2],'-',e[4]) elif e[3] == '*': ans = calc(e[2],'*',e[4]) else: ans = calc(e[2],'/',e[4]) #---((2+-*/3)+-*/4)---------------------------------------- if e[5] == '+': ans = calc(ans,'+',e[6]) elif e[5] == '-': ans = calc(ans,'-',e[6]) elif e[5] == '*': ans = calc(ans,'*',e[6]) else: ans = calc(ans,'/',e[6]) #---1+-*/((2+-*/3)+-*/4)---------------------------------------- if e[1] == '+': ans = calc(e[0],'+',ans) elif e[1] == '-': ans = calc(e[0],'-',ans) elif e[1] == '*': ans = calc(e[0],'*',ans) else: if ans == 0: ans = 0 else: ans = calc(e[0],'/',ans) #-------------------------------------------------------------- def gora5(e): #---(3+-*/4)----------------------------------------------- if e[5] == '+': ans = calc(e[4],'+',e[6]) elif e[5] == '-': ans = calc(e[4],'-',e[6]) elif e[5] == '*': ans = calc(e[4],'*',e[6]) else: ans = calc(e[4],'/',e[6]) #---(2+-*/(3+-*/4))---------------------------------------- if e[3] == '+': ans = calc(e[2],'+',ans) elif e[3] == '-': ans = calc(e[2],'-',ans) elif e[3] == '*': ans = calc(e[2],'*',ans) else: if ans == 0: ans = 0 else: ans = calc(e[2],'/',ans) #---1+-*/((2+-*/3)+-*/4)---------------------------------------- if e[1] == '+': ans = calc(e[0],'+',ans) elif e[1] == '-': ans = calc(e[0],'-',ans) elif e[1] == '*': ans = calc(e[0],'*',ans) else: if ans == 0: ans = 0 else: ans = calc(e[0],'/',ans) return ans #-------------------------------------------------------------- nums = input('Enter 4 integers: ') n = nums.split() numlist = [] found = False for e in n: numlist.append(int(e)) cases = generate_all_combinations( numlist , '+-*/' ) for e in cases: an1 = gora1(e) an2 = gora2(e) an3 = gora3(e) an4 = gora4(e) an5 = gora5(e) if an1 == 24: found = True print('( (',str(e[0]),e[1],str(e[2]),')',e[3],str(e[4]),')',e[5],str(e[6]),'= 24') break elif an2 == 24: found = True print('(',str(e[0]),e[1],'(',str(e[2]),e[3],str(e[4]),') )',e[5],str(e[6]),'= 24') break elif an3 == 24: found = True print('(',str(e[0]),e[1],str(e[2]),')',e[3],'(',str(e[4]),e[5],str(e[6]),')','= 24') break elif an4 == 24: found = True print(str(e[0]),e[1],'( (',str(e[2]),e[3],str(e[4]),')',e[5],str(e[6]),')','= 24') break elif an5 == 24: found = True print(str(e[0]),e[1],'(',str(e[2]),e[3],'(',str(e[4]),e[5],str(e[6]),') )','= 24') break if not found: print('No Solutions')
# 6330188821 (0) 50 (2021-02-22 23:55) def calc(num1, operation, num2): if (num1 =='zero')or(num2=='zero'): r = 'zero' elif operation == "+": r = num1 + num2 elif operation == "-": r = num1 - num2 elif operation == "*": r = num1 * num2 elif operation == "/" and num2 != 0 : r = num1 / num2 else:r = 'zero' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') #int nums = [int(x) for x in int nums.split()] nums = nums.split() num_list = [] for x in nums : num_list += [int(x)] ... cases = generate_all_combinations( num_list, '+-*/' ) abc = False for x in cases: x1 = x[0] o1 = x[1] x2 = x[2] o2 = x[3] x3 = x[4] o3 = x[5] x4 = x[6] x = calc((calc(x1,o1,x2),o2,x3),o3,x4) if x == 24: print ("(","(",x1,o1,x2,")",o2,x3,")",o3,x4,")") abc = True break x = calc((x1,o1,calc(x2,o2,x3)),o3,x4) if x == 24: print ("(",x1,o1,"(",x2,o2,x3,")",")",o3,x4,")") abc = True break x = calc(calc(x1,o1,x2),o2,calc(x3,o3,x4)) if x == 24: print("(",x1,o1,x2,")",o2,"(",x3,o3,x4,")") abc = True break x = calc(x1,o1,calc(calc(x2,o2,x3),o3,x4)) if x == 24: print ("(",x1,o1,"(","(",x2,o2,x3,")",o3,x4,")") abc = True break x = calc(x1,o1,calc(x2,o2,calc(x3,o3,x4))) if x == 24: print (x1,o1,"(",x2,o2,"(",x3,o3,x4,")",")") abc = True break if not abc: print("No Solutions")
# 6330189421 (18) 51 (2021-02-22 23:15) #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list=[int(e) for e in nums.split()] cases = generate_all_combinations( num_list , '+-*/' ) ans1=0 ans2=0 ans3=0 s1='' s2='' s3='' for i in range(len(cases)): z=cases[i] a=z[0] b=z[2] c=z[4] d=z[6] #case1 if z[1]=="+": ans1 = a+b s1='+' if z[1]=="-": ans1 = a-b s1='-' if z[1]=="*": ans1 = a*b s1='*' if b!=0: if z[1]=="/": ans1 = a/b s1='/' if z[3]=="+": ans2 = ans1+c s2='+' if z[3]=="-": ans2 = ans1-c s2='-' if z[3]=="*": ans2 = ans1*c s2='*' if c!=0: if z[3]=="/": ans2 = ans1/c s2='/' if z[5]=="+": ans3 = ans2+d s3='+' if z[5]=="-": ans3 = ans2-d s3='-' if z[5]=="*": ans3 = ans2*d s3='*' if d!=0: if z[5]=="/": ans3 = ans2/d s3='/' if ans3 == 24 : print('(','(',str(a),s1,str(b),')',s2,str(c),')',s3,str(d),'=',str(round(ans3))) break #case2 if z[3]=="+": ans1 = b+c s2='+' if z[3]=="-": ans1 = b-c s2='-' if z[3]=="*": ans1 = b*c s2='*' if c!=0: if z[3]=="/": ans1 = b/c s2='/' if z[1]=="+": ans2 = a+ans1 s1='+' if z[1]=="-": ans2 = a-ans1 s1='-' if z[1]=="*": ans2 = a*ans1 s1='*' if ans1!=0: if z[1]=="/": ans2 = a/ans1 s1='/' if z[5]=="+": ans3 = ans2+d s3='+' if z[5]=="-": ans3 = ans2-d s3='-' if z[5]=="*": ans3 = ans2*d s3='*' if d!=0: if z[5]=="/": ans3 = ans2/d s3='/' if ans3 == 24 : print('(',str(a),s1,'(',str(b),s2,str(c),')',')',s3,str(d),'=',str(round(ans3))) break #case3 if z[1]=="+": ans1 = a+b s1='+' if z[1]=="-": ans1 = a-b s1='-' if z[1]=="*": ans1 = a*b s1='*' if b!=0: if z[1]=="/": ans1 = a/b s1='/' if z[5]=="+": ans2 = c+d s3='+' if z[5]=="-": ans2 = c-d s3='-' if z[5]=="*": ans2 = c*d s3='*' if d!=0: if z[5]=="/": ans2 = c/d s3='/' if z[3]=="+": ans3 = ans1+ans2 s2='+' if z[3]=="-": ans3 = ans1-ans2 s2='-' if z[3]=="*": ans3 = ans1*ans2 s2='*' if ans2!=0: if z[3]=="/": ans1 = ans1/ans2 s2='/' if ans3 == 24 : print('(',str(a),s1,str(b),')',s2,'(',str(c),s3,str(d),')','=',str(round(ans3))) break #case4 if z[3]=="+": ans1 = b+c s2='+' if z[3]=="-": ans1 = b-c s2='-' if z[3]=="*": ans1 = b*c s2='*' if c!=0: if z[3]=="/": ans1 = b/c s2='/' if z[5]=="+": ans2 = ans1+d s3='+' if z[5]=="-": ans2 = ans1-d s3='-' if z[5]=="*": ans2 = ans1*d s3='*' if d!=0: if z[5]=="/": ans2 = ans1/d s3='/' if z[1]=="+": ans3 = a+ans2 s1='+' if z[1]=="-": ans3 = a-ans2 s1='-' if z[1]=="*": ans3 = a*ans2 s1='*' if ans2!=0: if z[1]=="/": ans3 = a/ans2 s1='/' if ans3 == 24 : print(str(a),s1,'(','(',str(b),s2,str(c),')',s3,str(d),')','=',str(round(ans3))) break #case5 if z[5]=="+": ans1 = c+d s3='+' if z[5]=="-": ans1 = c-d s3='-' if z[5]=="*": ans1 = c*d s3='*' if d!=0: if z[5]=="/": ans1 = c/d s3='/' if z[3]=="+": ans2 = b+ans1 s2='+' if z[3]=="-": ans2 = b-ans1 s2='-' if z[3]=="*": ans2 = b*ans1 s2='*' if ans1!=0: if z[3]=="/": ans2 = b/ans1 s2='/' if z[1]=="+": ans3 = a+ans2 s1='+' if z[1]=="-": ans3 = a-ans2 s1='-' if z[1]=="*": ans3 = a*ans2 s1='*' if ans2!=0: if z[1]=="/": ans3 = a/ans2 s1='/' if ans3 == 24 : print(str(a),s1,'(',str(b),s2,'(',str(c),s3,str(d),')',')','=',str(round(ans3))) break else : print('No Solutions')
# 6330190021 (20) 52 (2021-02-21 20:15) #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [] for i in range(len(nums.split())) : num_list += [nums.split()[i]] C = generate_all_combinations( num_list, '+-*/' ) #operator operator = "+-*/" oprt1, oprt2, oprt3 = "", "", "" op1, op2, op3 = 0, 0, 0 #number num1, num2, num3, num4 = 0.0, 0.0, 0.0, 0.0 Sum, Sum1, Sum2 = 0.0, 0.0, 0.0 pattern = 0 for e in C : for i in range(1,6) : if pattern == 0 : oprt1, oprt2, oprt3 = e[1], e[3], e[5] num1, num2, num3, num4 = float(e[0]), float(e[2]), float(e[4]), float(e[6]) for c in range(4) : if oprt1 == operator[c] : op1 = c if oprt2 == operator[c] : op2 = c if oprt3 == operator[c] : op3 = c if i == 1 : # pattern 1 if op1 == 0 : # + Sum1 = num1 + num2 elif op1 == 1 : # - Sum1 = num1 - num2 elif op1 == 2 : # * Sum1 = num1 * num2 elif op1 == 3 : # / if num2 == 0 : break Sum1 += num1 / num2 if op2 == 0 : # + Sum2 = Sum1 + num3 elif op2 == 1 : # - Sum2 = Sum1 - num3 elif op2 == 2 : # * Sum2 = Sum1 * num3 elif op2 == 3 : # / if num3 == 0 : break Sum2 += Sum1 / num3 if op3 == 0 : # + Sum = Sum2 + num4 elif op3 == 1 : # - Sum = Sum2 - num4 elif op3 == 2 : # * Sum = Sum2 * num4 elif op3 == 3 : # / if num4 == 0 : break Sum = Sum2 / num4 if Sum == 24 : pattern = 1 else: Sum, Sum1, Sum2 = 0, 0, 0 elif i == 2 : # pattern 2 if op2 == 0 : # + Sum1 = num2 + num3 elif op2 == 1 : # - Sum1 = num2 - num3 elif op2 == 2 : # * Sum1 = num2 * num3 elif op2 == 3 : # / if num3 == 0 : break Sum1 = num2 / num3 if op1 == 0 : # + Sum2 = num1 + Sum1 elif op1 == 1 : # - Sum2 = num1 - Sum1 elif op1 == 2 : # * Sum2 = num1 * Sum1 elif op1 == 3 : # / if Sum1 == 0 : break Sum2 = num1 / Sum1 if op3 == 0 : # + Sum = Sum2 + num4 elif op3 == 1 : # - Sum = Sum2 - num4 elif op3 == 2 : # * Sum = Sum2 * num4 elif op3 == 3 : # / if num4 == 0 : break Sum = Sum2 / num4 if Sum == 24 : pattern = 2 else: Sum, Sum1, Sum2 = 0, 0, 0 elif i == 3 : # pattern 3 if op1 == 0 : # + Sum1 = num1 + num2 elif op1 == 1 : # - Sum1 = num1 - num2 elif op1 == 2 : # * Sum1 = num1 * num2 elif op1 == 3 : # / if num2 == 0 : break Sum1 = num1 / num2 if op3 == 0 : # + Sum2 = num3 + num4 elif op3 == 1 : # - Sum2 = num3 - num4 elif op3 == 2 : # * Sum2 = num3 * num4 elif op3 == 3 : # / if num4 == 0 : break Sum2 = num3 / num4 if op2 == 0 : # + Sum = Sum1 + Sum2 elif op2 ==1 : # - Sum = Sum1 - Sum2 elif op2 == 2 : # * Sum = Sum1 * Sum2 elif op2 == 3 : # / if Sum2 == 0 : break Sum = Sum1 / Sum2 if Sum == 24 : pattern = 3 else: Sum, Sum1, Sum2 = 0, 0, 0 elif i == 4 : # pattern 4 if op2 == 0 : # + Sum1 = num2 +num3 elif op2 == 1 : # - Sum1 = num2 - num3 elif op2 == 2 : # * Sum1 = num2 * num3 elif op2 == 3 : # / if num3 == 0 : break Sum1 = num2 / num3 if op3 == 0 : # + Sum2 = Sum1 + num4 elif op3 == 1 : # - Sum2 = Sum1 - num4 elif op3 == 2 : # * Sum2 = Sum1 * num4 elif op3 == 3 : # / if num4 == 0 : break Sum2 = Sum1 / num4 if op1 == 0 : # + Sum = num1 + Sum2 elif op1 == 1 : # - Sum = num1 - Sum2 elif op1 == 2 : # * Sum += num1 * Sum2 elif op1 == 3 : # / if Sum2 == 0 : break Sum = num1 / Sum2 if Sum == 24 : pattern = 4 else: Sum, Sum1, Sum2 = 0, 0, 0 elif i == 5 : # pattern 5 if op3 == 0 : Sum1 = num3 + num4 elif op3 == 1 : Sum1 = num3 - num4 elif op3 == 2 : Sum1 = num3 * num4 elif op3 == 3 : if num4 == 0 : break Sum1 = num3 / num4 if op2 == 0 : Sum2 = num2 + Sum1 elif op2 == 1 : Sum2 = num2 - Sum1 elif op2 == 2 : Sum2 = num2 * Sum1 elif op2 == 3 : if Sum1 == 0 : break Sum2 = num2 / Sum1 if op1 == 0 : Sum = num1 + Sum2 elif op1 == 1 : Sum = num1 - Sum2 elif op1 == 2 : Sum = num1 * Sum2 elif op1 == 3 : if Sum2 == 0 : break Sum = num1 / Sum2 if Sum == 24 : pattern = 5 else: Sum, Sum1, Sum2 = 0, 0, 0 else: num1, num2, num3, num4 = int(num1), int(num2), int(num3), int(num4) if pattern == 0 : print("No Solutions") elif pattern == 1 : print("(","(",num1,oprt1,num2,")",oprt2,num3,")",oprt3,num4,"=","24") elif pattern == 2 : print("(",num1,oprt1,"(",num2,oprt2,num3,")",")",oprt3,num4,"=","24") elif pattern == 3 : print("(",num1,oprt1,num2,")",oprt2,"(",num3,oprt3,num4,")","=","24") elif pattern == 4 : print(num1,oprt1,"(","(",num2,oprt2,num3,")",oprt3,num4,")","=","24") elif pattern == 5 : print(num1,oprt1,"(",num2,oprt2,"(",num3,oprt3,num4,")",")","=","24")
# 6330191621 (9.28) 53 (2021-02-22 19:21) # --------------------------------------------------------- def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': try: r = num1 / num2 except ZeroDivisionError: pass return r def check(mate): wlsolution = [] wlcase1 = 0 wlcase2 = 0 wlcase3 = 0 wlcase4 = 0 wlcase5 = 0 while wlcase1 != 24 and wlcase2 != 24 and wlcase3 != 24 and wlcase4 != 24 and wlcase5 != 24: for item in mate : x1 = calc(int(item[0]), item[1], int(item[2])) y1 = calc(x1, item[3], item[4]) z1 = calc(y1, item[5], item[6]) wlcase1 = z1 x2 = calc(int(item[2]), item[3], int(item[4])) y2 = calc(item[0], item[1], x2) z2 = calc(y2, item[5], item[6]) wlcase2 = z2 x3 = calc(int(item[0]), item[1], int(item[2])) y3 = calc(item[4], item[5], item[6]) z3 = calc(x3, item[3], y3) wlcase3 = z3 x4 = calc(int(item[2]), item[3], int(item[4])) y4 = calc(x4, item[5], item[6]) z4 = calc(item[0], item[1], y4) wlcase4 = z4 x5 = calc(int(item[4]), item[5], int(item[6])) y5 = calc(item[2], item[3], x5) z5 = calc(item[0], item[1], y5) wlcase5 = z5 if 23.9 <= wlcase1 <= 24 : wlsolution = ['( (', item[0], item[1], item[2], ')', item[3], item[4], ')', item[5], item[6]] elif 23.9 <= wlcase2 <= 24 : wlsolution = ['(', item[0], item[1], '(', item[2], item[3], item[4], ') )', item[5], item[6]] elif 23.9 <= wlcase3 <= 24 : wlsolution = ['(', item[0], item[1], item[2], ')', item[3], '(', item[4], item[5], item[6], ')'] elif 23.9 <= wlcase4 <= 24 : wlsolution = [item[0], item[1], '( (', item[2], item[3], item[4], ')', item[5], item[6], ')'] elif 23.9 <= wlcase5 <= 24 : wlsolution = [item[0], item[1], '(', item[2], item[3], '(', item[4], item[5], item[6], ') )'] return wlsolution def itsovernowbro(list): expression_string = ' '.join(str(x) for x in list) if expression_string == '': print('No Solution') else: print(expression_string, '= 24') # --------------------------------------------------------- nums = input('Enter 4 integers: ') numlist = nums.split(' ') nums = [int(numlist[0]), int(numlist[1]), int(numlist[2]), int(numlist[3])] cases = generate_all_combinations(nums, '+-*/') ans = check(cases) itsovernowbro(ans)
# 6330192221 (20) 54 (2021-02-22 13:43) def calc(num1, op, num2): if op == "+": r =num1+num2 elif op == "-": r =num1-num2 elif op == "*": r=num1*num2 elif op == "/": if num2!=0: r=num1/num2 else: r=1000000 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() nums[0]=int(nums[0]) nums[1]=int(nums[1]) nums[2]=int(nums[2]) nums[3]=int(nums[3]) nums = list(nums) c = generate_all_combinations( nums, '+-*/' ) for i in range(len(c)): r1=calc(calc(calc(c[i][0],c[i][1],c[i][2]),c[i][3],c[i][4]),c[i][5],c[i][6]) r2=calc(calc(c[i][0],c[i][1],calc(c[i][2],c[i][3],c[i][4])),c[i][5],c[i][6]) r3=calc(calc(c[i][0],c[i][1],c[i][2]),c[i][3],calc(c[i][4],c[i][5],c[i][6])) r4=calc(c[i][0],c[i][1],calc(calc(c[i][2],c[i][3],c[i][4]),c[i][5],c[i][6])) r5=calc(c[i][0],c[i][1],calc(c[i][2],c[i][3],calc(c[i][4],c[i][5],c[i][6]))) if r1==24: print("(","(",c[i][0],c[i][1],c[i][2],")",c[i][3],c[i][4],")",c[i][5],c[i][6],"=",int(r1)) exit() elif r2==24: print("(",c[i][0],c[i][1],"(",c[i][2],c[i][3],c[i][4],")",")",c[i][5],c[i][6],"=",int(r2)) exit() elif r3==24: print("(",c[i][0],c[i][1],c[i][2],")",c[i][3],"(",c[i][4],c[i][5],c[i][6],")","=",int(r3)) exit() elif r4==24: print(c[i][0],c[i][1],"(","(",c[i][2],c[i][3],c[i][4],")",c[i][5],c[i][6],")","=",int(r4)) exit() elif r5==24: print(c[i][0],c[i][1],"(",c[i][2],c[i][3],"(",c[i][4],c[i][5],c[i][6],")",")","=",int(r5)) exit() print("No Solutions")
# 6330193921 (20) 55 (2021-02-21 14:17) def calc(num1, op, num2): if op == "+": r = num1 + num2 elif op == "-": r = num1 - num2 elif op == "*": r = num1*num2 elif op == "/": if num2 == 0: r = num1/0.1e1000000000 else: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() num_list = [int(num_list[0]),int(num_list[1]),int(num_list[2]),int(num_list[3])] cases = generate_all_combinations( num_list, '+-*/' ) for e in cases : r1 = calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6]) if r1 == 24: break r2 = calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6]) if r2 == 24: break r3 = calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6])) if r3 == 24: break r4 = calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6])) if r4 == 24: break r5 = calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6]))) if r5 == 24: break if r1 == 24: print("( ( "+str(e[0]),e[1],str(e[2]),")",e[3],str(e[4]),")",e[5],e[6],"= 24") elif r2 == 24: print("(",str(e[0]),e[1],"(",str(e[2]),e[3],str(e[4]),") )",e[5],str(e[6]),"= 24") elif r3 == 24: print("(",str(e[0]),e[1],str(e[2]),")",e[3],"(",str(e[4]),e[5],str(e[6]),")","= 24") elif r4 == 24: print(str(e[0]),e[1],"( (",str(e[2]),e[3],str(e[4]),")",e[5],str(e[6]),")","= 24") elif r5 == 24: print(str(e[0]),e[1],"(",str(e[2]),e[3],"(",str(e[4]),e[5],str(e[6]),") )","= 24") else: print("No Solutions")
# 6330194521 (18) 56 (2021-02-21 17:14) def calc(num1,op,num2): if op == '+': res = num1 + num2 elif op == '-': res = num1 - num2 elif op == '*': res = num1 * num2 elif op == '/': if num2 == 0: res = 0 elif num2 != 0: res = num1 / num2 return res #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_list = nums.split(" ") cases = generate_all_combinations(nums_list, '+-*/' ) summ1 = 0 summ2 = 0 summ3 = 0 summ4 = 0 summ5 = 0 ans = [] for i in range(len(cases)): exa = cases[i] nums1 = int(exa[0]) ops1 = exa[1] nums2 = int(exa[2]) ops2 = exa[3] nums3 = int(exa[4]) ops3 = exa[5] nums4 = int(exa[6]) summ1 = calc(calc(calc(nums1,ops1,nums2),ops2,nums3),ops3,nums4) ans.append(summ1) summ2 = calc(calc(nums1,ops1,calc(nums2,ops2,nums3)),ops3,nums4) ans.append(summ2) summ3 = calc((calc(nums1,ops1,nums2)),ops2,calc(nums3,ops3,nums4)) ans.append(summ3) summ4 = calc(nums1,ops1,(calc(calc(nums2,ops2,nums3),ops3,nums4))) ans.append(summ4) summ5 = calc(nums1,ops1,calc(nums2,ops2,calc(nums3,ops3,nums4))) ans.append(summ5) if 24 not in ans: print("No Solutions") elif 24 in ans: for j in range(len(cases)): ex = cases[j] num1 = int(ex[0]) op1 = ex[1] num2 = int(ex[2]) op2 = ex[3] num3 = int(ex[4]) op3 = ex[5] num4 = int(ex[6]) sh = cases[j] if calc(calc(calc(num1,op1,num2),op2,num3),op3,num4) == 24: c1 = "("+" "+"("+" "+sh[0]+" "+sh[1]+" "+sh[2]+" "+")"+" "+sh[3]+" "+sh[4]+" "+")"+" "+sh[5]+" "+sh[6] print(c1+" "+"="+" "+"24") break elif calc(calc(num1,op1,calc(num2,op2,num3)),op3,num4) == 24: c2 = "("+" "+sh[0]+" "+sh[1]+" "+"("+" "+sh[2]+" "+sh[3]+" "+sh[4]+" "+")"+" "+")"+" "+sh[5]+" "+sh[6] print(c2+" "+"="+" "+"24") break elif calc((calc(num1,op1,num2)),op2,calc(num3,op3,num4)) == 24: c3 = "("+" "+sh[0]+" "+sh[1]+" "+sh[2]+" "+")"+" "+sh[3]+" "+"("+" "+sh[4]+" "+sh[5]+" "+sh[6]+" "+")" print(c3+" "+"="+" "+"24") break elif calc(num1,op1,(calc(calc(num2,op2,num3),op3,num4))) == 24: c4 = sh[0]+" "+sh[1]+" "+"("+" "+"("+" "+sh[2]+" "+sh[3]+" "+sh[4]+" "+")"+" "+sh[5]+" "+sh[6]+" "+")" print(c4+" "+"="+" "+"24") break elif calc(num1,op1,calc(num2,op2,calc(num3,op3,num4))) == 24: c5 = sh[0]+" "+sh[1]+" "+"("+" "+sh[2]+" "+"("+" "+sh[3]+" "+sh[4]+" "+sh[5]+" "+")"+" "+sh[6]+" "+")" print(c5+" "+"="+" "+"24") break
# 6330197421 (20) 57 (2021-02-20 22:14) import math def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 else: if num2 != 0: r = num1 / num2 else: r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() nums = [int(nums[0]), int(nums[1]), int(nums[2]), int(nums[3])] cases = generate_all_combinations(nums, '+-*/' ) have_solutions = False method = 0 for e in cases: a = calc(e[0], e[1], e[2]) b = calc(a, e[3], e[4]) c = calc(b, e[5], e[6]) if c == 24: have_solutions = True method = 1 break a = calc(e[2], e[3], e[4]) b = calc(e[0], e[1], a) c = calc(b, e[5], e[6]) if c == 24: have_solutions = True method = 2 break a = calc(e[0], e[1], e[2]) b = calc(e[4], e[5], e[6]) c = calc(a, e[3], b) if c == 24: have_solutions = True method = 3 break a = calc(e[2], e[3], e[4]) b = calc(a, e[5], e[6]) c = calc(e[0], e[1], b) if c == 24: have_solutions = True method = 4 break a = calc(e[4], e[5], e[6]) b = calc(e[2], e[3], a) c = calc(e[0], e[1], b) if c == 24: have_solutions = True method = 5 break if have_solutions == True: if method == 1: print('(', '(', e[0], e[1], e[2], ')', e[3], e[4], ')', e[5], e[6], '=', '24') elif method == 2: print('(', e[0], e[1], '(', e[2], e[3], e[4], ')', ')', e[5], e[6], '=', '24') elif method == 3: print('(', e[0], e[1], e[2], ')', e[3], '(', e[4], e[5], e[6], ')', '=', '24') elif method == 4: print(e[0], e[1], '(', '(', e[2], e[3], e[4], ')', e[5], e[6], ')', '=', '24') else: print(e[0], e[1], '(', e[2], e[3], '(', e[4], e[5], e[6], ')', ')', '=', '24') else: print("No Solutions")
# 6330198021 (18) 58 (2021-02-22 21:21) #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() operators = '+-*/' c = generate_all_combinations(num_list, operators) def cal(number1,operator,number2) : if operator == '+' : s = float(number1) + float(number2) elif operator == '-' : s = float(number1) - float(number2) elif operator == '*' : s = float(number1) * float(number2) elif operator == '/' : if float(number2) != 0 : s = float(number1) / float(number2) else : s = 999999999999999999999 return s for d in c : C1 = cal(cal(cal(d[0],d[1],d[2]),d[3],d[4]),d[5],d[6]) C2 = cal((cal(d[0],d[1],(cal(d[2],d[3],d[4])))),d[5],d[6]) C3 = cal(cal(d[0],d[1],d[2]),d[3],cal(d[4],d[5],d[6])) C4 = cal(d[0],d[1],cal(cal(d[2],d[3],d[4]),d[5],d[6])) C5 = cal(d[0],d[1],cal(d[2],d[3],cal(d[4],d[5],d[6]))) if C1 == 24 : result = '(','(',d[0],d[1],d[2],')',d[3],d[4],')',d[5],d[6],'= 24' break elif C2 == 24 : result = '(',d[0],d[1],'(',d[2],d[3],d[4],')',')',d[5],d[6],'= 24' break elif C3 == 24 : result = '(',d[0],d[1],d[2],')',d[3],'(',d[4],d[5],d[6],')','= 24' elif C4 == 24 : result = d[0],d[1],'(','(',d[2],d[3],d[4],')',d[5],d[6],')','= 24' break elif C5 == 24 : result = d[0],d[1],'(',d[2],d[3],'(',d[4],d[5],d[6],')',')','= 24' break else: result = 'x' final_result = '' if result == 'x': final_result ='No Solutions' else: for e in result: final_result += e final_result += ' ' print(final_result)
# 6330199721 (20) 59 (2021-02-19 15:36) def calc(num1,op,num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = 0 else: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(z) for z in nums.split()] operators = '+-*/' cases = generate_all_combinations(num_list, operators) a = 0 for i in cases: if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24: a += 1 print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'= 24') elif calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) == 24: a += 1 print('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'= 24') elif calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) == 24: a += 1 print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','= 24') elif calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) == 24: a += 1 print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','= 24') elif calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) == 24: a += 1 print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','= 24') if a == 1: break if a == 0: print('No Solutions')
# 6330200621 (15.82) 60 (2021-02-20 03:03) def calc(num1, op, num2): if num1 == 'หาค่าไม่ได้' or num2 == 'หาค่าไม่ได้': r = 'หาค่าไม่ได้' elif op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if int(num2) == 0 or float(num2) == 0.0: r = 'หาค่าไม่ได้' else : r = int(num1) / int(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( nums.split(), '+-*/' ) for case in cases: n1 = case[0] n2 = case[1] n3 = case[2] n4 = case[3] n5 = case[4] n6 = case[5] n7 = case[6] if calc(calc(calc(n1,n2,n3),n4,n5),n6,n7) == 24: print('( (',n1,n2,n3,')',n4,n5,')',n6,n7,'= 24') break if calc(calc(n1,n2,calc(n3,n4,n5)),n6,n7) == 24: print('(',n1,n2,'(',n3,n4,n5,') )',n6,n7,'= 24') break if calc(calc(n1,n2,n3),n4,calc(n5,n6,n7)) == 24: print('(',n1,n2,n3,')',n4,'(',n5,n6,n7,') = 24') break if calc(n1,n2,calc(calc(n3,n4,n5),n6,n7)) == 24: print(n1,n2,'( (',n3,n4,n5,')',n6,n7,') = 24') break if calc(n1,n2,calc(n3,n4,calc(n5,n6,n7))) == 24: print(n1,n2,'(',n3,n4,'(',n5,n6,n7,') ) = 24') break if cases.index(case) == len(cases)-1: print('No Solution')
# 6330201221 (20) 61 (2021-02-22 13:35) def calc(num1,op,num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = 0 else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = (int(e) for e in nums.split()) cases = generate_all_combinations( num_list, '+-*/' ) for i in range (len(cases)): #[1, '+', 2, '+', 3, '+', 4] c1 = cases[i] cal1 = calc((calc(calc(c1[0],c1[1],c1[2]),c1[3],c1[4])),c1[5],c1[6]) if cal1 == 24:break cal2 = calc((calc(c1[0],c1[1],calc(c1[2],c1[3],c1[4]))),c1[5],c1[6]) if cal2 == 24:break cal3 = calc(calc(c1[0],c1[1],c1[2]),c1[3],calc(c1[4],c1[5],c1[6])) if cal3 == 24:break cal4 = calc(c1[0],c1[1],calc(calc(c1[2],c1[3],c1[4]),c1[5],c1[6])) if cal4 == 24:break cal5 = calc(c1[0],c1[1],calc(c1[2],c1[3],calc(c1[4],c1[5],c1[6]))) if cal5 == 24:break if cal1 == 24: print("("+" "+"("+" "+str(c1[0])+" "+str(c1[1])+" "+str(c1[2])+" "+")",str(c1[3])+" "+str(c1[4])+" "+")"+" "+str(c1[5])+" "+str(c1[6]),"=","24") elif cal2 == 24: print("(",str(c1[0]),str(c1[1]),"(",str(c1[2]),str(c1[3]),str(c1[4]),")",")",str(c1[5]),str(c1[6]),"=","24") elif cal3 == 24: print("(",str(c1[0]),str(c1[1]),str(c1[2]),")",str(c1[3]),"(",str(c1[4]),str(c1[5]),str(c1[6])+" )","=","24") elif cal4 == 24: print(str(c1[0]),str(c1[1])+" (","(",str(c1[2]),str(c1[3]),str(c1[4]),")",str(c1[5]),str(c1[6]),")","=","24") elif cal5 == 24: print(str(c1[0]),str(c1[1]),"(",str(c1[2]),str(c1[3]),"(",str(c1[4]),str(c1[5]),str(c1[6]),")",")","=","24") else: print("No Solutions")
# 6330202921 (16.4) 62 (2021-02-22 23:00) def operation(nleft,nright,op): if op=="+": return nleft+nright elif op=="-": return nleft-nright elif op=="*": return nleft*nright if nright==0: return -1000000 return nleft/nright def generate_answer(case,fmt): if fmt == 1: case.insert(0,"(") case.insert(4,")") case.insert(0,"(") case.insert(8,")") elif fmt == 2: case.insert(0,"(") case.insert(4,")") case.insert(6,"(") case.insert(10,")") elif fmt == 3: case.insert(2,"(") case.insert(6,")") case.insert(0,"(") case.insert(8,")") elif fmt == 4: case.insert(2,"(") case.insert(6,")") case.insert(2,"(") case.insert(10,")") else: case.insert(4,"(") case.insert(8,")") case.insert(2,"(") case.insert(10,")") def find_answer(case,anslist): n1 = int(case[0]) n2 = int(case[2]) n3 = int(case[4]) n4 = int(case[6]) op1 = case[1] op2 = case[3] op3 = case[5] if operation(operation((operation(n1,n2,op1)),n3,op2),n4,op3)==24: generate_answer(case,1) return True elif operation(operation(n1,n2,op1),operation(n3,n4,op3),op2)==24: generate_answer(case,2) return True elif operation(operation(n1,(operation(n2,n3,op2)),op1),n4,op3)==24: generate_answer(case,3) return True elif operation(n1,operation((operation(n2,n3,op2)),n4,op3),op3)==24: generate_answer(case,4) return True elif operation(n1,operation(n2,(operation(n3,n4,op3)),op2),op1)==24: generate_answer(case,5) return True return False #--------------------------------------------------------- nums = input('Enter 4 integers: ') numslist = nums.split() cases = generate_all_combinations( numslist, '+-*/' ) anslist = [] for case in cases: if find_answer(case,anslist): anslist = case break if len(anslist)==0: print("No Solutions") else: ans = "" for char in anslist: ans += char ans += "=24" print(ans)
# 6330203521 (20) 63 (2021-02-21 22:36) def calc(num1, op, num2) : try : if op == "+" : return num1+num2 elif op == "-" : return num1-num2 elif op == "*" : return num1*num2 elif op == "/" and num2 != 0: return num1/num2 except : return def game24(u) : s = 0 for i in range(len(u)) : a = int(u[i][0]) b = int(u[i][2]) c = int(u[i][4]) d = int(u[i][6]) op1 = u[i][1] op2 = u[i][3] op3 = u[i][5] ans1 = calc((calc((calc(a,op1,b)),op2,c)),op3,d) ans2 = calc((calc(a,op1,(calc(b,op2,c)))),op3,d) ans3 = calc((calc(a,op1,b)),op2,(calc(c,op3,d))) ans4 = calc(a,op1,(calc((calc(b,op2,c)),op3,d))) ans5 = calc(a,op1,(calc(b,op2,(calc(c,op3,d))))) try : if ans1 == 24 : print("("+" "+"("+" "+str(a)+" "+op1+" "+str(b)+" "+")"+" "+op2+" "+str(c)+" "+")"+" "+op3+" "+str(d)+" "+"="+" "+"24") s = 1 break elif ans2 == 24 : print("("+" "+str(a)+" "+op1+" "+"("+" "+str(b)+" "+op2+" "+str(c)+" "+")"+" "+")"+" "+op3+" "+str(d)+" "+"="+" "+"24") s= 1 break elif ans3 == 24 : print("("+" "+str(a)+" "+op1+" "+str(b)+" "+")"+" "+op2+" "+"("+" "+str(c)+" "+op3+" "+str(d)+" "+")"+" "+"="+" "+"24") s = 1 break elif ans4 == 24 : print(str(a)+" "+op1+" "+"("+" "+"("+" "+str(b)+" "+op2+" "+str(c)+" "+")"+" "+op3+" "+str(d)+" "+")"+" "+"="+" "+"24") s = 1 break elif ans5 == 24 : print(str(a)+" "+op1+" "+"("+" "+str(b)+" "+op2+" "+"("+" "+str(c)+" "+op3+" "+str(d)+" "+")"+" "+")"+" "+"="+" "+"24") s = 1 break except : continue if s == 0 : print("No Solutions") #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split(" ") cases = generate_all_combinations( nums, '+-*/' ) ans = game24(cases)
# 6330205821 (19.82) 64 (2021-02-22 14:30) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if not num2 == 0: r = num1 / num2 else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nl = (int(e) for e in nums.split()) cases = generate_all_combinations( nl, '+-*/' ) for k in range(len(cases)): i = cases[k] x1 = calc(calc(calc(int(i[0]), i[1],int(i[2])),i[3],int(i[4])),i[5],int(i[6])) if x1 == 24: print('('+' '+'('+' '+str(i[0])+' '+str(i[1])+' '+str(i[2])+' '+')'+' '+str(i[3])+' '+str(i[4])+' '+')'+' '+str(i[5])+' '+str(i[6])+' '+'='+' '+'24') break x2 = calc(calc(int(i[0]),i[1],calc(int(i[2]),i[3],int(i[4]))),i[5],int(i[6])) if x2 == 24: print('('+' '+str(i[0])+' '+str(i[1])+' '+'('+' '+str(i[2])+' '+str(i[3])+' '+str(i[4])+' '+')'+' '+')'+' '+str(i[5])+' '+str(i[6])+' '+'='+' '+'24') break x3 = calc(calc(int(i[0]),i[1],int(i[2])),i[3],calc(int(i[4]),i[5],int(i[6]))) if x3 == 24: print('('+' '+str(i[0])+' '+str(i[1])+' '+str(i[2])+' '+')'+' '+str(i[3])+' '+'('+' '+str(i[4])+' '+str(i[5])+' '+str(i[6])+' '+')'+' '+'='+' '+'24') break x4 = calc(int(i[0]),i[1],calc(calc(int(i[2]),i[3],int(i[4])),i[5],int(i[6]))) if x4 == 24: print(str(i[0])+' '+str(i[1])+' '+'('+' '+'('+' '+str(i[2])+' '+str(i[3])+' '+str(i[4])+' '+')'+' '+str(i[5])+' '+str(i[6])+' '+')'+' '+'='+' '+'24') break x5 = calc(int(i[0]),i[1],calc(int(i[2]),i[3],calc(int(i[4]),i[5],int(i[6])))) if x5 == 24: print(str(i[0])+' '+str(i[1])+' '+'('+' '+str(i[2])+' '+str(i[3])+' '+'('+' '+str(i[4])+' '+str(i[5])+' '+str(i[6])+' '+')'+' '+')'+' '+'='+' '+'24') break else: print('No Solution')
# 6330206421 (20) 65 (2021-02-20 11:59) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if (num2 == 0): r = 0 else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_x = nums.split(" ") cases = generate_all_combinations(nums_x , '+-*/') i = 0 while(i<len(cases)): casesZ = cases[i] num1 = int(casesZ[0]) num2 = int(casesZ[2]) num3 = int(casesZ[4]) num4 = int(casesZ[6]) op1 = casesZ[1] op2 = casesZ[3] op3 = casesZ[5] #case1 = ((num1+num2)+num3)+num4 case1_1 = (calc(num1, op1, num2)) case1_2 = (calc(case1_1, op2, num3)) case1_3 = (calc(case1_2, op3, num4)) #case2 = (num1+(num2+num3))+num4 case2_1 = (calc(num2, op2, num3)) case2_2 = (calc(num1, op1, case2_1)) case2_3 = (calc(case2_2, op3, num4)) #case3 = (num1+num2)+(num3+num4) case3_1 = (calc(num1, op1, num2)) case3_2 = (calc(num3, op3, num4)) case3_3 = (calc(case3_1, op2, case3_2)) #case4 = num1+((num2+num3)+num4) case4_1 = (calc(num2, op2, num3)) case4_2 = (calc(case4_1, op3, num4)) case4_3 = (calc(num1, op1, case4_2)) #case5 = num1+(num2+(num3+num4)) case5_1 = (calc(num3, op3, num4)) case5_2 = (calc(num2, op2, case5_1)) case5_3 = (calc(num1, op1, case5_2)) if (case1_3 == 24): print("( ( "+str(num1)+" "+op1+" "+str(num2)+" "+")"+" "+op2+" "+str(num3)+" )"+" "+op3+" "+str(num4)+" = 24") break elif (case2_3 == 24): print("( "+str(num1)+" "+op1+" "+"( "+str(num2)+" "+op2+" "+str(num3)+" ) )"+" "+op3+" "+str(num4)+" = 24") break elif (case3_3 == 24): print("( "+str(num1)+" "+op1+" "+str(num2)+" )"+" "+op2+" "+"( "+str(num3)+" "+op3+" "+str(num4)+" )"+" = 24") break elif (case4_3 == 24): print(str(num1)+" "+op1+" ( ( "+str(num2)+" "+op2+" "+str(num3)+" )"+" "+op3+" "+str(num4)+" )"+" = 24") break elif (case5_3 == 24): print(str(num1)+" "+op1+" ( "+str(num2)+" "+op2+" ( "+str(num3)+" "+op3+" "+str(num4)+" ) )"+" = 24") break i += 1 if(i>=len(cases)): print("No Solutions") break
# 6330208721 (20) 66 (2021-02-18 23:25) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == "-": r = num1 - num2 elif op == "*": r = num1*num2 elif op == "/": if num2 == 0: r = 0 else: r = num1/num2 return r #--------------------------------------------------------- nums = [int(e) for e in input('Enter 4 integers: ').split()] cases = generate_all_combinations( nums, '+-*/' ) for i in cases: a1 = calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) a2 = calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) a3 = calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) a4 = calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) a5 = calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) if a1 ==24: k0 = f"( ( {i[0]} {i[1]} {i[2]} ) {i[3]} {i[4]} ) {i[5]} {i[6]} = 24" break elif a2 == 24: k0 = f"( {i[0]} {i[1]} ( {i[2]} {i[3]} {i[4]} ) ) {i[5]} {i[6]} = 24" break elif a3 == 24: k0 = f"( {i[0]} {i[1]} {i[2]} ) {i[3]} ( {i[4]} {i[5]} {i[6]} ) = 24" break elif a4 == 24: k0 = f"{i[0]} {i[1]} ( ( {i[2]} {i[3]} {i[4]} ) {i[5]} {i[6]} ) = 24" break elif a5 == 24: k0 = f"{i[0]} {i[1]} ( {i[2]} {i[3]} ( {i[4]} {i[5]} {i[6]} ) ) = 24" break if i == cases[-1]: if a1 == 24: k0 = f"( ( {i[0]} {i[1]} {i[2]} ) {i[3]} {i[4]} ) {i[5]} {i[6]} = 24" break elif a2 == 24: k0 = f"( {i[0]} {i[1]} ( {i[2]} {i[3]} {i[4]} ) ) {i[5]} {i[6]} = 24" break elif a3 == 24: k0 = f"( {i[0]} {i[1]} {i[2]} ) {i[3]} ( {i[4]} {i[5]} {i[6]} ) = 24" break elif a4 == 24: k0 = f"{i[0]} {i[1]} ( ( {i[2]} {i[3]} {i[4]} ) {i[5]} {i[6]} ) = 24" break elif a5 == 24: k0 = f"{i[0]} {i[1]} ( {i[2]} {i[3]} ( {i[4]} {i[5]} {i[6]} ) ) = 24" break else: k0 = "No Solutions" break print(k0)
# 6330209321 (14.8) 67 (2021-02-22 15:27) def calc(number_and_operator): a,op1,b,op2,c,op3,d = number_and_operator seen = [] something_equal = False for number in [a,b,c,d]: if number in seen: something_equal = True else: seen.append(number) try : ans1 = eval(str(f'( ( {a} {op1} {b} ) {op2} {c} ) {op3} {d}')) ans2 = eval(str(f'( {a} {op1} ( {b} {op2} {c} ) ) {op3} {d}')) ans3 = eval(str(f'( {a} {op1} {b} ) {op2} ( {c} {op3} {d} )')) ans4 = eval(str(f'{a} {op1} ( ( {b} {op2} {c} ) {op3} {d} )')) ans5 = eval(str(f'{a} {op1} ( ( {b} {op2} {c} ) {op3} {d} )')) if ans1 == 24 : return str(f'( ( {a} {op1} {b} ) {op2} {c} ) {op3} {d}') elif ans2 == 24 : return str(f'( {a} {op1} ( {b} {op2} {c} ) ) {op3} {d}') elif ans3 == 24: return str(f'( {a} {op1} {b} ) {op2} ( {c} {op3} {d} )') elif ans4 == 24 : return str(f'{a} {op1} ( ( {b} {op2} {c} ) {op3} {d} )') elif ans5 == 24 : return str(f'{a} {op1} ( ( {b} {op2} {c} ) {op3} {d} )') else : return 'NO 24 TRY NEXT' except ZeroDivisionError: #มีปัญหาZerodivisionError return 'NO 24 TRY NEXT' #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = [] for e in nums.split() : n.append(int(e)) cases = generate_all_combinations( n, '+-*/' ) found = False for e in cases: if calc(e) != 'NO 24 TRY NEXT' : print(calc(e)) found = True break if not found : print('No Solutions')
# 6330210921 (14.14) 68 (2021-02-18 11:40) fin_test = 0 def calc (num1,op,num2) : n1 = float(num1) n2 = float(num2) if op == "+" : r = n1 + n2 elif op == "-" : r = n1 - n2 elif op == "*" : r = n1 * n2 elif op == "/" and n2 != 0: r = n1 / n2 else : r = "none" return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations( num_list, '+-*/' ) for i in range(len(cases)) : test = cases[i] test1 = calc(test[0],test[1],test[2]) if test1 != "none" : test2 = calc(test1,test[3],test[4]) if test2 != "none" : fin_test = calc(test2,test[5],test[6]) if fin_test == 24 : print("(","(",test[0],test[1],test[2],test[3],test[4],")"\ ,test[5],test[6],"=","24") break test1 = calc(test[2],test[3],test[4]) if test1 != "none" : test2 = calc(test[0],test[1],test1) if test2 != "none" : fin_test = calc(test2,test[5],test[6]) if fin_test == 24 : print("(",test[0],test[1],"(",test[2],test[3],test[4],")"\ ,")",test[5],test[6],"=","24") break test1 = calc(test[0],test[1],test[2]) if test1 != "none" : test2 = calc(test[4],test[5],test[6]) if test2 != "none" : fin_test = calc(test1,test[3],test2) if fin_test == 24 : print("(",test[0],test[1],test[2],")",test[3],"(",test[4]\ ,test[5],test[6],")","=","24") break test1 = calc(test[2],test[3],test[4]) if test1 != "none" : test2 = calc(test1,test[5],test[6]) if test2 != "none" : fin_test = calc(test[0],test[1],test2) if fin_test == 24 : print(test[0],test[1],"(","(",test[2],test[3],test[4]\ ,")",test[5],test[6],")","=","24") break test1 = calc(test[4],test[5],test[6]) if test1 != "none" : test2 = calc(test[2],test[3],test1) if test2 != "none" : fin_test = calc(test[0],test[1],test2) if fin_test == 24 : print(test[0],test[1],"(",test[2],test[3],"(",test[4]\ ,test[5],test[6],")",")","=","24") break if fin_test != 24 : print("No Solutions")
# 6330211521 (12) 69 (2021-02-22 16:57) def calc(num1, op1, num2): if op1 == '+': r = num1 + num2 elif op1 == '-': r = num1 - num2 elif op1 == '*': r = num1 * num2 elif op1 == '/' and num2 != 0 : r = num1 / num2 return r def calc(num12, op2, num3): if op2 == '+': r1 = num12 + num3 elif op2 == '-': r1 = num12 - num3 elif op2 == '*': r1 = num12 * num3 elif op2 == '/' and num3 != 0 : r1 = num12 / num3 return r1 def calc(num12_3, op3, num4): if op3 == '+': r2 = num12_3 + num4 elif op3 == '-': r2 = num12_3 - num4 elif op3 == '*': r2 = num12_3 * num4 elif op3 == '/' and num4 != 0 : r2 = num12_3 / num4 return r2 def calc(num2, op2, num3): if op2 == '+': r3 = num2 + num3 elif op2 == '-': r3 = num2 - num3 elif op2 == '*': r3 = num2 * num3 elif op2 =='/' and num3 != 0 : r3 = num2 / num3 return r3 def calc(num1, op1, num23): if op1 == '+': r4 = num1 + num23 elif op1 == '-': r4 = num1 - num23 elif op1 == '*': r4 = num1 * num23 elif op1 == '/' and num23 != 0 : r4 = num1 / num23 return r4 def calc(num1_23, op3, num4): if op3 == '+': r5 = num1_23 + num4 elif op3 == '-': r5 = num1_23 - num4 elif op3 == '*': r5 = num1_23 * num4 elif op3 == '/' and num4 != 0 : r5 = num1_23 / num4 return r5 def calc(num3, op3, num4): if op3 == '+': r6 = num3 + num4 elif op3 == '-': r6 = num3 - num4 elif op3 == '*': r6 = num3 * num4 elif op3 == '/' and num4 != 0 : r6 = num3 / num4 return r6 def calc(num23, op2, num34): if op2 == '+': r7 = num23 + num34 elif op2 == '-': r7 = num23 - num34 elif op2 == '*': r7 = num23 * num34 elif op2 == '/' and num34 != 0 : r7 = num23 / num34 return r7 def calc(num23, op3, num4): if op3 == '+': r8 = num23 + num4 elif op3 == '-': r8 = num23 - num4 elif op3 == '*': r8 = num23 * num4 elif op3 == '/' and num4 != 0 : r8 = num23 / num4 return r8 def calc(num1, op1, num23_4): if op1 == '+': r9 = num1 + num23_4 elif op1 == '-': r9 = num1 - num23_4 elif op1 == '*': r9 = num1 * num23_4 elif op1 == '/' and num23_4 != 0 : r9 = num1 / num23_4 return r9 def calc(num2, op2, num34): if op2 == '+': r10 = num2 + num34 elif op2 == '-': r10 = num2 - num34 elif op2 == '*': r10 = num2 * num34 elif op2 == '/' and num34 != 0 : r10 = num2 / num34 return r10 def calc(num1, op1, num23_4): if op1 == '+': r11 = num1 + num23_4 elif op1 == '-': r11 = num1 - num23_4 elif op1 == '*': r11 = num1 * num23_4 elif op1 == '/' and num23_4 != 0 : r11 = num1/num23_4 return r11 #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() num_1 = int(nums[0]) num_2 = int(nums[1]) num_3 = int(nums[2]) num_4 = int(nums[3]) num = [num_1, num_2, num_3, num_4] op = '+-*/' cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)) : num1 = int(cases[i][0]) num2 = int(cases[i][2]) num3 = int(cases[i][4]) num4 = int(cases[i][6]) op1 = str(cases[i][1]) op2 = str(cases[i][3]) op3 = str(cases[i][5]) num12 = calc(num1, op1, num2) num12_3 = calc(num12, op2, num3) num23 = float(calc(num2, op2, num3)) num1_23 = calc(num1, op1, num23) if calc(num2, op2, num3)==0 and op1=='/' : print("No Solutions") break num34 = calc(num3, op3, num4) num23_34 = calc(num23, op2, num34) if num34==0 and op2=='/' : print("No Solutions") break num23_4 = calc(num23, op3, num4) num2_34 = calc(num2, op2, num34) num1_2_34 = calc(num1, op1, num2_34) if calc(num12_3, op3, num4) == 24 : print('(', '(', ' '.join(cases[i][0:3]), ')', ' '.join(cases[i][3:5]), ')', ' '.join(cases[i][5:]), '= 24') break elif calc(num1_23, op3, num4) == 24 : print('(', ' '.join(cases[i][0:2]), '(', ' '.join(cases[i][2:5]), ')', ')', ' '.join(cases[i][5:]), '= 24') break elif calc(num23, op2, num34) == 24 : print('(', ' '.join(cases[i][0:3]), ')', str(cases[i][3]), '(', ' '.join(cases[i][4:]), ')', '= 24') break elif calc(num1, op1, num23_4) == 24 : print(' '.join(cases[i][0:2]), '(', '(', ' '.join(cases[i][2:5]), ')', ' '.join(cases[i][5:]), ')', '= 24') break elif calc(num1, op1, num2_34) == 24 : print(' '.join(cases[i][0:2]), '(', ' '.join(cases[i][2:4]), '(', ' '.join(cases[i][4:]), ')', ')', '= 24') break for i in range(len(cases)) : if calc(num12_3, op3, num4) != 24 and calc(num1_23, op3, num4) != 24 and calc(num23, op2, num34) != 24 and calc(num1, op1, num23_4) != 24 and calc(num1, op1, num2_34) != 24 : print("No Solutions") break
# 6330212121 (18) 70 (2021-02-19 22:26) def calc(num1, op, num2): r=0 num1=float(num1) num2=float(num2) if op == '+': r = num1 + num2 if op == '-': r = num1 - num2 if op == '*': r = num1 * num2 if op == '/' and num2!=0: if abs(num2)>abs(num1): r=123456789 else: if num1%num2==0: r=num1/num2 else: r=123456789 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() cases = generate_all_combinations( nums, '+-*/' ) chk=0 for lt in cases: x1=calc(calc(calc(lt[0],lt[1],lt[2]),lt[3],lt[4]),lt[5],lt[6]) x2=calc(calc(lt[0],lt[1],calc(lt[2],lt[3],lt[4])),lt[5],lt[6]) x3=calc(calc(lt[0],lt[1],lt[2]),lt[3],calc(lt[4],lt[5],lt[6])) x4=calc(lt[0],lt[1],calc(calc(lt[2],lt[3],lt[4]),lt[5],lt[6])) x5=calc(lt[0],lt[1],calc(lt[2],lt[3],calc(lt[4],lt[5],lt[6]))) if x1==24: print('(','(',lt[0],lt[1],lt[2],')',lt[3],lt[4],')',lt[5],lt[6],'= 24') chk=1 break elif x2==24: print('(',lt[0],lt[1],'(',lt[2],lt[3],lt[4],')',')',lt[5],lt[6],'= 24') chk=1 break elif x3==24: print('(',lt[0],lt[1],lt[2],')',lt[3],'(',lt[4],lt[5],lt[6],')','= 24') chk=1 break elif x4==24: print(lt[0],lt[1],'(','(',lt[2],lt[3],lt[4],')',lt[5],lt[6],')','= 24') chk=1 break elif x5==24: print(lt[0],lt[1],'(',lt[2],lt[3],'(',lt[4],lt[5],lt[6],')',')','= 24') chk=1 break if chk==0: print('No Solutions')
# 6330213821 (12.8) 71 (2021-02-22 17:35) def calc(num1, op, num2): num1 = int(num1) num2 = int(num2) if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1*num2 elif op == '/': if int(num2) == 0: return 290000 r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() found = False c = generate_all_combinations( nums, '+-*/' ) for i in range (len(c)): l = c[i] if calc(calc(calc(l[0],l[1],l[2]),l[3],l[4]),l[5],l[6]) == 24 : print("((",l[0],l[1],l[2],')',l[3],l[4],')',l[5],l[6],'=','24') found = True break elif calc(calc(l[0],l[1],calc(l[2],l[3],l[4])),l[5],l[6]) == 24 : print('(',l[0],l[1],'(',l[2],l[3],l[4],'))',l[5],l[6],'=','24') found = True break elif calc(calc(l[0],l[1],l[2]),l[3],calc(l[4],l[5],l[6])) == 24 : print('(',l[0],l[1],l[2],')',l[3],'(',l[4],l[5],l[6],')','=','24') found = True break elif calc(l[0],l[1],calc(calc(l[2],l[3],l[4]),l[5],l[6])) == 24 : print(l[0],l[1],'((',l[2],l[3],l[4],')',l[5],l[6],')') found = True break elif calc(l[0],l[1],calc(l[2],l[3],calc(l[4],l[5],l[6]))) == 24 : print (l[0],l[1],'(',l[2],l[3],'(',l[4],l[5],l[6],'))','=','24') found = True break if not found : print('No Solutions')
# 6330214421 (20) 72 (2021-02-19 22:27) def calc(num1,op,num2): if op == "+": r = float(num1) + float(num2) elif op == "-": r = float(num1) - float(num2) elif op == "*": r = float(num1)*float(num2) elif op == "/": if num2 != 0: r = float(num1)/float(num2) else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split() cases = generate_all_combinations(a, '+-*/' ) p = 0 for e in cases: if calc(calc((calc(e[0],e[1],e[2])),e[3],e[4]),e[5],e[6]) == 24: print("( (",e[0],e[1],e[2],")",e[3],e[4],")",e[5],e[6],"=",24) p = 1 break elif calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6]) == 24: print("(",e[0],e[1],"(",e[2],e[3],e[4],") )",e[5],e[6],"=",24) p = 1 break elif calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6])) == 24: print("(",e[0],e[1],e[2],")",e[3],"(",e[4],e[5],e[6],")","=",24) p = 1 break elif calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6])) == 24: print(e[0],e[1],"( (",e[2],e[3],e[4],")",e[5],e[6],")","=",24) p = 1 break elif calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6]))) == 24: print(e[0],e[1],"(",e[2],e[3],"(",e[4],e[5],e[6],") )","=",24) p = 1 break if p == 0: print("No Solutions")
# 6330215021 (20) 73 (2021-02-21 01:13) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = math.inf elif num2 == math.inf: r = math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.split()] cases = generate_all_combinations(num_list, '+-*/') found = False for e in cases: c1 = calc(calc(calc(e[0], e[1], e[2]), e[3], e[4]), e[5], e[6]) if c1 == 24: print('(', '(', e[0], e[1], e[2], ')', e[3], e[4], ')', e[5], e[6], '= 24') found = True break c2 = calc(calc(e[0], e[1], calc(e[2], e[3], e[4])), e[5], e[6]) if c2 == 24: print('(', e[0], e[1], '(', e[2], e[3], e[4], ')', ')', e[5], e[6], '= 24') found = True break c3 = calc(calc(e[0], e[1], e[2]), e[3], calc(e[4], e[5], e[6])) if c3 == 24: print('(', e[0], e[1], e[2], ')', e[3], '(', e[4], e[5], e[6], ')', '= 24') found = True break c4 = calc(e[0], e[1], calc(calc(e[2], e[3], e[4]), e[5], e[6])) if c4 == 24: print(e[0], e[1], '(', '(', e[2], e[3], e[4], ')', e[5], e[6], ')', '= 24') found = True break c5 = calc(e[0], e[1], calc(e[2], e[3], calc(e[4], e[5], e[6]))) if c5 == 24: print(e[0], e[1], '(', e[2], e[3], '(', e[4], e[5], e[6], ')', ')', '= 24') found = True break if not found: print("No Solutions")
# 6330216721 (20) 74 (2021-02-18 22:44) import operator op_dict = {'+': operator.add, '-': operator.sub, '*': operator.mul, '/': operator.truediv} def compute_unit(a1, op, a2): return op_dict[op](a1, a2) def string_unit(s1, op, s2): s1 = str(s1) s2 = str(s2) if not s1.strip('-').isnumeric(): s1 = "( {} )".format(s1) if not s2.strip('-').isnumeric(): s2 = "( {} )".format(s2) return "{} {} {}".format(s1,op,s2) def compute_posi(tokens, posi): val_arr = tokens[::] string_arr = tokens[::] for p in posi: l, r = 2*p, 2*p+3 val_arr = val_arr[:l] + [compute_unit(*val_arr[l:r])] + val_arr[r:] string_arr = string_arr[:l] + [string_unit(*string_arr[l:r])] + string_arr[r:] assert len(val_arr) == len(string_arr) == 1 return val_arr[0], string_arr[0] posibility = [ (0, 0, 0), (1, 0, 0), (0, 1, 0), (1, 1, 0), (2, 1, 0) ] def compute(tokens): for p in posibility: try: v, s = compute_posi(tokens, p) except ZeroDivisionError: continue yield (v, s) def compute_all(cases): for case in cases: yield from compute(case) #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... ... cases = generate_all_combinations( [int(i) for i in nums.split()], '+-*/' ) ... for v,s in compute_all(cases): if v == 24: print("{} = 24".format(s)) break else: print("No Solutions")
# 6330217321 (20) 75 (2021-02-19 23:42) def cal(num1,op,num2): if op=="+": r=num1+num2 elif op=="-": r=num1-num2 elif op=="*": r=num1*num2 elif op=="/": if num2==0 or num2==math.inf: r=math.inf else: r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() n=[0]*4 for i in range (len(n)): n[i]=int(nums[i]) cases = generate_all_combinations(n,'+-*/' ) k=0 for n in cases: c1=cal(cal(cal(n[0],n[1],n[2]),n[3],n[4]),n[5],n[6]) c2=cal(cal(n[0],n[1],cal(n[2],n[3],n[4])),n[5],n[6]) c3=cal(cal(n[0],n[1],n[2]),n[3],cal(n[4],n[5],n[6])) c4=cal(n[0],n[1],cal(cal(n[2],n[3],n[4]),n[5],n[6])) c5=cal(n[0],n[1],cal(n[2],n[3],cal(n[4],n[5],n[6]))) if c1==24: print("( (",n[0],n[1],n[2],")",n[3],n[4],")",n[5],n[6],"= 24") k+=1 break if c2==24: print("(",n[0],n[1],"(",n[2],n[3],n[4],") )",n[5],n[6],"= 24") k+=1 break if c3==24: print("(",n[0],n[1],n[2],")",n[3],"(",n[4],n[5],n[6],") = 24") k+=1 break if c4==24: print(n[0],n[1],"( (",n[2],n[3],n[4],")",n[5],n[6],") = 24") k+=1 break if c5==24: print(n[0],n[1],"(",n[2],n[3],"(",n[4],n[5],n[6],") ) = 24") k+=1 break if k==0: print("No Solutions")
# 6330219621 (20) 76 (2021-02-20 13:54) def calc (x,op,y): if op == "+" : r = x + y elif op == "-" : r = x - y elif op == "*" : r = x * y elif op == "/" and y != 0 : r = x / y else : r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums , '+-*/' ) for i in range(len(cases)) : c = cases[i] fn = "No Solutions" s = 0 for n in range(5) : if n == 0 : s = calc(int(c[0]),c[1],int(c[2])) s = calc(s,c[3],int(c[4])) s = calc(s,c[5],int(c[6])) if s == 24 : fn = "( ( "+str(c[0])+" "+str(c[1])+" "+str(c[2])+" ) "+str(c[3])+" "+str(c[4])+" ) "+str(c[5])+" "+str(c[6])+" = 24" break elif n == 1 : s = calc(int(c[2]),c[3],int(c[4])) s = calc(int(c[0]),c[1],s) s = calc(s,c[5],int(c[6])) if s == 24 : fn = "( "+str(c[0])+" "+str(c[1])+" ( "+str(c[2])+" "+str(c[3])+" "+str(c[4])+" ) ) "+str(c[5])+" "+str(c[6])+" = 24" break elif n == 2 : s = 0 s1 = calc(int(c[0]),c[1],int(c[2])) s2 = calc(int(c[4]),c[5],int(c[6])) s = calc(s1,c[3],s2) if s == 24 : fn = "( "+str(c[0])+" "+str(c[1])+" "+str(c[2])+" ) "+str(c[3])+" ( "+str(c[4])+" "+str(c[5])+" "+str(c[6])+" )"+" = 24" break elif n == 3 : s = calc(int(c[2]),c[3],int(c[4])) s = calc(s,c[5],int(c[6])) s = calc(int(c[0]),c[1],s) if s == 24 : fn = str(c[0])+" "+str(c[1])+" ( ( "+str(c[2])+" "+str(c[3])+" "+str(c[4])+" ) "+str(c[5])+" "+str(c[6])+" )"+" = 24" break else : s = calc(int(c[4]),c[5],int(c[6])) s = calc(int(c[2]),c[3],s) s = calc(int(c[0]),c[1],s) if s == 24 : fn = str(c[0])+" "+str(c[1])+" ( "+str(c[2])+" "+str(c[3])+" ( "+str(c[4])+" "+str(c[5])+" "+str(c[6])+" ) )"+" = 24" break if s == 24 : break print(fn)
# 6330221821 (20) 77 (2021-02-21 23:29) def cal(no1, o, no2): if o == '+': r = no1+no2 elif o == '-': r = no1-no2 elif o == '/': if no2 == 0: r = math.pi else: r = no1/no2 elif o == '*': r = no1*no2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') p = nums.split() for i in range(len(p)): p[i] = int(p[i]) cases = generate_all_combinations( p, '+-*/' ) doc = 0 for i in range(len(cases)): u = cases[i] b = ' ' v1 = '( ( '+str(u[0])+b+u[1]+b+str(u[2])+' ) '+u[3]+b+str(u[4])+' ) '+u[5]+b+str(u[6]) c1 = cal(cal(cal(u[0],u[1],u[2]),u[3],u[4]),u[5],u[6]) if abs(24-c1) < 24*1e-9: sol = v1 break v2 = '( '+str(u[0])+b+u[1]+' ( '+str(u[2])+b+u[3]+b+str(u[4])+' ) ) '+u[5]+b+str(u[6]) c2 = cal(cal(u[0],u[1],cal(u[2],u[3],u[4])),u[5],u[6]) if abs(24-c2) < 24*1e-9: sol = v2 break v3 = '( '+str(u[0])+b+u[1]+b+str(u[2])+' ) '+u[3]+' ( '+str(u[4])+b+u[5]+b+str(u[6])+' )' c3 = cal(cal(u[0],u[1],u[2]),u[3],cal(u[4],u[5],u[6])) if abs(24-c3) < 24*1e-9: sol = v3 break v4 = str(u[0])+b+u[1]+' ( ( '+str(u[2])+b+u[3]+b+str(u[4])+' ) '+u[5]+b+str(u[6])+' )' c4 = cal(u[0],u[1],cal(cal(u[2],u[3],u[4]),u[5],u[6])) if abs(24-c4) < 24*1e-9: sol = v4 break v5 = str(u[0])+b+u[1]+' ( '+str(u[2])+b+u[3]+' ( '+str(u[4])+b+u[5]+b+str(u[6])+' ) )' c5 = cal(u[0],u[1],cal(u[2],u[3],cal(u[4],u[5],u[6]))) if abs(24-c5) < 24*1e-9: sol = v5 break doc += 1 if doc == len(cases): print('No Solutions') else: print(sol,'=', '24')
# 6330222421 (19.46) 78 (2021-02-19 21:53) nums = input('Enter 4 integers: ') num2 = nums.split() a = num2[0] ; b = num2[1] ; c =num2[2] ; d = num2[3] cases = generate_all_combinations( [a,b,c,d], '+-*/' ) i = 0 while i < len(cases) : def weird_division(n, d) : return n / d if d else 0 n1 = int((cases[i])[0]) ; o1 = (cases[i])[1] n2 = int((cases[i])[2]) ; o2 = (cases[i])[3] n3 = int((cases[i])[4]) ; o3 = (cases[i])[5] n4 = int((cases[i])[6]) if o1 == '+' : #case 1------------------- r = n1 + n2 elif o1 == '-' : r = n1 - n2 elif o1 == '*' : r = n1 * n2 elif o1 == '/' : r = n1 / n2 if n2 != 0 else 0 if o2 == '+' : w = r + n3 elif o2 == '-' : w = r - n3 elif o2 == '*' : w = r * n3 elif o2 == '/' : w = r / n3 if n3 != 0 else 0 if o3 == '+' : q = w + n4 elif o3 == '-' : q = w - n4 elif o3 == '*' : q = w * n4 elif o3 == '/' : q = w / n4 if n4 != 0 else 0 if o2 == '+' : #case2---------------------- r2 = n2 + n3 elif o2 == '-' : r2 = n2 - n3 elif o2 == '*' : r2 = n2 * n3 elif o2 == '/' : r2 = n2 / n3 if n3 != 0 else 0 if o1 == '+' : w2 = n1 + r2 elif o1 == '-' : w2 = n1 - r2 elif o1 == '*' : w2 = n1 * r2 elif o1 == '/' : w2 = n1 / r2 if r2 != 0 else 0 if o3 == '+' : q2 = w2 + n4 elif o3 == '-' : q2 = w2 - n4 elif o3 == '*' : q2 = w2 * n4 elif o3 == '/' : q2 = w2 / n4 if n4 != 0 else 0 if o1 == '+' : #case3---------------------- r3 = n1 + n2 elif o1 == '-' : r3 = n1 - n2 elif o1 == '*' : r3 = n1 * n2 elif o1 == '/' : r3 = n1 / n2 if n2 != 0 else 0 if o3 == '+' : w3 = n3 + n4 elif o3 == '-' : w3 = n3 - n4 elif o3 == '*' : w3 = n3 * n4 elif o3 == '/' : w3 = n3 / n4 if n4 != 0 else 0 if o2 == '+' : q3 = r3 + w3 elif o2 == '-' : q3 = r3 - w3 elif o2 == '*' : q3 = r3 * w3 elif o2 == '/' : q3 = r3 / w3 if w3 != 0 else 0 if o2 == '+' : #case4---------------------- r4 = n2 + n3 elif o2 == '-' : r4 = n2 - n3 elif o2 == '*' : r4 = n2 * n3 elif o2 == '/' : r4 = n2 / n3 if n3 != 0 else 0 if o3 == '+' : w4 = r4 + n4 elif o3 == '-' : w4 = r4 - n4 elif o3 == '*' : w4 = r4 * n4 elif o3 == '/' : w4 = r4 / n4 if n4 != 0 else 0 if o1 == '+' : q4 = n1 +w4 elif o1 == '-' : q4 = n1 - w4 elif o1 == '*' : q4 = n1 * w4 elif o1 == '/' : q4 = n1 / w4 if w4 != 0 else 0 if o3 == '+' : #case5---------------------- r5 = n3 + n4 elif o3 == '-' : r5 = n3 - n4 elif o3 == '*' : r5 = n3 * n4 elif o3 == '/' : r5 = n3 / n4 if n4 != 0 else 0 if o2 == '+' : w5 = n2 + r5 elif o2 == '-' : w5 = n2 - r5 elif o2 == '*' : w5 = n2 * r5 elif o2 == '/' : w5 = n2 / r5 if r5 != 0 else 0 if o1 == '+' : q5 = n1 +w5 elif o1 == '-' : q5 = n1 - w5 elif o1 == '*' : q5 = n1 * w5 elif o1 == '/' : q5 = n1 / w5 if w5 != 0 else 0 case1 = q case2 = q2 case3 = q3 case4 = q4 case5 = q5 i += 1 if case1 == 24 : print('(','(',str(n1), o1 , str(n2),')', o2 , str(n3),')', o3 , str(n4),' = ','24') break else : if case2 == 24 : print('(',str(n1), o1 ,'(', str(n2), o2 ,str(n3),')',')', o3 , str(n4),' = ','24') break else : if case3 == 24 : print('(',str(n1), o1 ,str(n2),')', o2 ,'(',str(n3), o3 ,str(n4),')',' = ','24') break else : if case4 == 24 : print(str(n1), o1 ,'(','(',str(n2), o2 ,str(n3),')', o3 , str(n4),')',' = ','24') break else : if case5 == 24 : print(str(n1), o1 ,'(',str(n2), o2 ,'(',str(n3), o3 ,str(n4),')',')',' = ','24') break if case1 != 24 and case2 != 24 and case3 != 24 and case4 != 24 and case5 != 24 : print("No solotion")
# 6330223021 (20) 79 (2021-02-18 16:30) def calc( num1, operation, num2 ): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 else: if num2 == 0: r = math.inf else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations(nums, '+-*/') for i in cases: if calc(calc(calc(int(i[0]),i[1],int(i[2])),i[3],int(i[4])),i[5],int(i[6])) == 24: print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'= 24') break if calc(calc(int(i[0]),i[1],calc(int(i[2]),i[3],int(i[4]))),i[5],int(i[6])) == 24: print('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'= 24') break if calc(calc(int(i[0]),i[1],int(i[2])),i[3],calc(int(i[4]),i[5],int(i[6]))) == 24: print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','= 24') break if calc(int(i[0]),i[1],calc(calc(int(i[2]),i[3],int(i[4])),i[5],int(i[6]))) == 24: print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','= 24') break if calc(int(i[0]),i[1],calc(int(i[2]),i[3],calc(int(i[4]),i[5],int(i[6])))) == 24: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','= 24') break else : print('No Solutions')
# 6330224721 (20) 80 (2021-02-20 11:28) import math as m def cal(num1,op,num2): if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/': if num2 !=0 : r=num1/num2 else: r=m.e return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() a = int(nums[0]) b = int(nums[1]) c = int(nums[2]) d = int(nums[3]) found = False cases = generate_all_combinations( [a,b,c,d], '+-*/' ) for i in cases: if cal(cal(cal(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6])==24: found = True print('( '+'( '+str(i[0])+' '+str(i[1])+' '+str(i[2])+' )'+' '+str(i[3])+' '+str(i[4])+' )'+' '+str(i[5])+' '+str(i[6])+' '+'='+' '+'24') break elif cal(cal(i[0],i[1],cal(i[2],i[3],i[4])),i[5],i[6])==24: found = True print('( '+str(i[0])+' '+str(i[1])+' ('+' '+str(i[2])+' '+str(i[3])+' '+str(i[4])+' )'+' )'+' '+str(i[5])+' '+str(i[6])+' '+'='+' '+'24') break elif cal(cal(i[0],i[1],i[2]),i[3],cal(i[4],i[5],i[6]))==24: found = True print('( '+str(i[0])+' '+str(i[1])+' '+str(i[2])+' )'+' '+str(i[3])+' '+'( '+str(i[4])+' '+str(i[5])+' '+str(i[6])+' )'+' '+'='+' '+'24') break elif cal(i[0],i[1],cal(cal(i[2],i[3],i[4]),i[5],i[6]))==24: found = True print( str(i[0])+' '+str(i[1])+' '+'( '+'( '+str(i[2])+' '+str(i[3])+' '+str(i[4])+' )'+' '+str(i[5])+' '+str(i[6])+' )'+' '+'='+' '+'24') break elif cal(i[0],i[1],cal(i[2],i[3],cal(i[4],i[5],i[6])))==24: found = True print( str(i[0])+' '+str(i[1])+' '+'( '+str(i[2])+' '+str(i[3])+' '+'( '+str(i[4])+' '+str(i[5])+' '+str(i[6])+' )'+' )'+' '+'='+' '+'24') break if not found: print("No Solutions")
# 6330225321 (20) 81 (2021-02-22 08:50) def calc(num1, op, num2): if op == '+': r = float(num1)+ float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1)* float(num2) elif op == '/': if float(num2) ==0 : r = math.inf else : r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations(nums.split() , '+-*/' ) for e in cases : a1 = calc(e[0],e[1],e[2]) a2 = calc(a1,e[3],e[4]) a3 = calc(a2,e[5],e[6]) if a3 ==24 : print('( ' +'( ' + e[0] +' ' +e[1] +' '+e[2] +' '+') '+e[3] +' '+e[4] +' '+') '+e[5] +' '+e[6]+' ' +'='+' '+ '24') break a4 = calc(e[2],e[3],e[4]) a5 = calc(e[0],e[1],a4) a6 = calc(a5,e[5],e[6]) if a6 ==24 : print('( ' + e[0] +' ' +e[1] +' '+'( '+e[2] +' '+e[3] +' '+e[4] +' '+') '+') '+e[5] +' '+e[6]+' ' +'='+' '+ '24') break a7 = calc(e[0],e[1],e[2]) a8 = calc(e[4],e[5],e[6]) a9 = calc(a7,e[3],a8) if a9 ==24 : print('( ' + e[0] +' ' +e[1] +' '+e[2] +' '+') '+e[3] +' '+'( ' +e[4] +' '+e[5] +' '+e[6]+' '+') ' +'='+' '+ '24') break a10 = calc(e[2],e[3],e[4]) a11= calc(a10,e[5],e[6]) a12 = calc(e[0],e[1],a11) if a12 ==24 : print( e[0] +' ' +e[1] +' '+'( ' +'( ' +e[2] +' '+e[3] +' '+e[4] +' '+') '+e[5] +' '+e[6]+' '+') ' +'='+' '+ '24') break a13= calc(e[4],e[5],e[6]) a14= calc(e[2],e[3],a13) a15 = calc(e[0],e[1],a14) if a15 ==24 : print( e[0] +' ' +e[1] +' '+'( ' +e[2] +' '+e[3] +' '+'( '+e[4] +' '+e[5] +' '+e[6]+' '+') '+') ' +'='+' '+ '24') break if a3 !=24.0 and a6 !=24.0 and a9 !=24.0 and a12 !=24.0 and a15 !=24.0 : print('No Solutions')
# 6330226021 (20) 82 (2021-02-19 23:33) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = math.inf elif num2 == math.inf: r = math.inf else: r = num1 / num2 return r def met_1(num1,op1,num2,op2,num3,op3,num4): r1 = calc(num1,op1,num2) r2 = calc(r1,op2,num3) r3 = calc(r2,op3,num4) return r3 def met_2(num1,op1,num2,op2,num3,op3,num4): r1 = calc(num2,op2,num3) r2 = calc(num1,op1,r1) r3 = calc(r2,op3,num4) return r3 def met_3(num1,op1,num2,op2,num3,op3,num4): r1 = calc(num1,op1,num2) r2 = calc(num3,op3,num4) r3 = calc(r1,op2,r2) return r3 def met_4(num1,op1,num2,op2,num3,op3,num4): r1 = calc(num2,op2,num3) r2 = calc(r1,op3,num4) r3 = calc(num1,op1,r2) return r3 def met_5(num1,op1,num2,op2,num3,op3,num4): r1 = calc(num3,op3,num4) r2 = calc(num2,op2,r1) r3 = calc(num1,op1,r2) return r3 #--------------------------------------------------------- nums = [int(e) for e in input('Enter 4 integers: ').split()] cases = generate_all_combinations( nums, '+-*/' ) Ans = False for e in cases: r_met1 = met_1(e[0],e[1],e[2],e[3],e[4],e[5],e[6]) r_met2 = met_2(e[0],e[1],e[2],e[3],e[4],e[5],e[6]) r_met3 = met_3(e[0],e[1],e[2],e[3],e[4],e[5],e[6]) r_met4 = met_4(e[0],e[1],e[2],e[3],e[4],e[5],e[6]) r_met5 = met_5(e[0],e[1],e[2],e[3],e[4],e[5],e[6]) if r_met1 == 24: print('(','(',e[0],e[1],e[2],')',e[3],e[4],')',e[5],e[6],'= 24') Ans = True break elif r_met2 == 24: print('(',e[0],e[1],'(',e[2],e[3],e[4],')',')',e[5],e[6],'= 24') Ans = True break elif r_met3 == 24: print('(',e[0],e[1],e[2],')',e[3],'(',e[4],e[5],e[6],')','= 24') Ans = True break elif r_met4 == 24: print(e[0],e[1],'(','(',e[2],e[3],e[4],')',e[5],e[6],')','= 24') Ans = True break elif r_met5 == 24: print(e[0],e[1],'(',e[2],e[3],'(',e[4],e[5],e[6],')',')','= 24') Ans = True break if not Ans: print('No Solutions')
# 6330227621 (0) 83 (2021-02-22 00:27) #--------------------------------------------------------- nums = input('Enter 4 integers: ') N = nums.split() NN = [int(N[0]),int(N[1]),int(N[2]),int(N[3])] All = generate_all_combinations(NN, '+-*/') print(All) #................. for c in All: #......................................( ( 1 + 2 ) + 3 ) + 4........................................ if c[1]=='+': C=c[0]+c[2] elif c[1]=='-': C=c[0]-c[2] elif c[1]=='*': C=c[0]*c[2] elif c[1]=='/' and c[2]!=0: C=c[0]/c[2] #.............. if c[3]=='+': C+=c[4] elif c[3]=='-': C-=c[4] elif c[3]=='*': C=C*c[4] elif c[3]=='/'and c[4]!=0: C=C/c[4] #.............. if c[5]=='+': C+=c[6] elif c[5]=='-': C-=c[6] elif c[5]=='*': C=C*c[6] elif c[5]=='/' and c[6]!=0: C=C/c[6] #print(c,C) #......เอาออกด้วย....... if C==24: print('(','(',c[0],c[1],c[2],')',c[3],c[4],')',c[5],c[6],'= 24') break #.........................................( 1 + ( 2 + 3 ) ) + 4........................................ else: if c[3]=='+': C=c[4]+c[2] elif c[3]=='-': C=c[2]-c[4] elif c[3]=='*': C=c[2]*c[4] elif c[3]=='/'and c[2]!=0: C=c[2]/c[4] #.............. if c[1]=='+': C+=c[0] elif c[1]=='-': C=c[0]-C elif c[1]=='*': C=C*c[0] elif c[1]=='/'and C!=0: C=c[0]/C #.............. if c[5]=='+': C+=c[6] elif c[5]=='-': C-=c[6] elif c[5]=='*': C=C*c[6] elif c[5]=='/'and c[6]!=0: C=C/c[6] #print(c,C) #......เอาออกด้วย....... if C==24: print('(',c[0],c[1],'(',c[2],c[3],c[4],')',')',c[5],c[6],'= 24') break #...................................( 1 + 2 ) + ( 3 + 4 ).......................................... else: if c[1]=='+': C1=c[0]+c[2] elif c[1]=='-': C1=c[0]-c[2] elif c[1]=='*': C1=c[0]*c[2] elif c[1]=='/'and c[2]!=0: C1=c[0]/c[2] #.............. if c[5]=='+': C2=c[4]+c[6] elif c[5]=='-': C2=c[4]-c[6] elif c[5]=='*': C2=c[4]*c[6] elif c[5]=='/'and c[6]!=0: C2=c[4]/c[6] #................. if c[3]=='+': C=C1+C2 elif c[3]=='-': C=C1-C2 elif c[3]=='*': C=C1*C2 elif c[3]=='/'and C2!=0: C=C1/C2 #print(c,C) #......เอาออกด้วย....... if C==24: print('(',c[0],c[1],c[2],')',c[3],'(',c[4],c[5],c[6],')','= 24') break #..........................................1 + ( ( 2 + 3 ) + 4 )............................................... else: if c[3]=='+': C=c[4]+c[2] elif c[3]=='-': C=c[2]-c[4] elif c[3]=='*': C=c[4]*c[2] elif c[3]=='/'and c[4]!=0: C=c[2]/c[4] #.............. if c[5]=='+': C+=c[6] elif c[5]=='-': C=C-c[6] elif c[5]=='*': C=C*c[6] elif c[5]=='/'and c[6]!=0: C=C/c[6] #.............. if c[1]=='+': C+=c[0] elif c[1]=='-': C=c[0]-C elif c[1]=='*': C=C*c[0] elif c[1]=='/'and C!=0: C=c[0]/C #print(c,C) #......เอาออกด้วย....... if C==24: print(c[0],c[1],'(','(',c[2],c[3],c[4],')',c[5],c[6],')','= 24') break #..........................................1 + ( 2 + ( 3 + 4 ) ).............................. else: if c[5]=='+': C=c[4]+c[6] elif c[5]=='-': C=c[4]-c[6] elif c[5]=='*': C=c[4]*c[6] elif c[5]=='/'and c[6]!=0: C=c[4]/c[6] #.............. if c[3]=='+': C+=c[2] elif c[3]=='-': C=c[2]-C elif c[3]=='*': C=C*c[2] elif c[3]=='/'and C!=0: C=c[2]/C #.............. if c[1]=='+': C+=c[0] elif c[1]=='-': C=c[0]-C elif c[1]=='*': C=C*c[0] elif c[1]=='/'and C!=0: C=c[0]/C #print(c,C) #......เอาออกด้วย....... if C==24: print(c[0],c[1],'(',c[2],c[3],'(',c[4],c[5],c[6],')',')','= 24') break if C!=24: print('No Solutions')
# 6330228221 (20) 84 (2021-02-21 12:39) operation = "+-*/" def calc(num_1,operation,num_2): if operation == '+': r = num_1 + num_2 elif operation == '-': r = num_1 - num_2 elif operation == '*': r = num_1 * num_2 elif operation == '/': if num_2 != 0: r = num_1 / num_2 else : r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) ans = "" for i in cases : num1 = int(i[0]) num2 = int(i[2]) num3 = int(i[4]) num4 = int(i[6]) op1 = i[1] op2 = i[3] op3 = i[5] if calc(calc(calc(num1,op1,num2),op2,num3),op3,num4) == 24 : ans = "("+' '+'('+' '+str(num1)+' '+op1+' '+str(num2)+' '+')'+' '+op2+' '+str(num3)+' '+')'+' '+op3+' '+str(num4)+ ' ' +'='+' '+'24' elif calc(calc(num1,op1,calc(num2,op2,num3)),op3,num4) == 24 : ans = '('+' '+str(num1)+' '+op1+' '+'('+' '+str(num2)+' '+op2+' '+str(num3)+' '+')'+' '+')'+' '+op3+' '+str(num4)+ ' ' +'='+' '+'24' elif calc(calc(num1,op1,num2),op2,calc(num3,op3,num4)) == 24 : ans = '('+' '+str(num1)+' '+op1+' '+str(num2)+' '+')'+' '+op2+' '+'('+' '+str(num3)+' '+op3+' '+str(num4)+' '+')'+ ' ' +'='+' '+'24' elif calc(num1,op1,calc(calc(num2,op2,num3),op3,num4)) == 24 : ans = str(num1)+' '+op1+' '+'('+' '+'('+' '+str(num2)+' '+op2+' '+str(num3)+' '+')'+' '+op3+' '+str(num4)+' '+')'+ ' ' +'='+' '+'24' elif calc(num1,op1,calc(num2,op2,calc(num3,op3,num4))) == 24 : ans = str(num1)+' '+op1+' '+'('+' '+str(num2)+' '+op2+' '+'('+' '+str(num3)+' '+op3+' '+str(num4)+' '+')'+' '+')'+ ' ' +'='+' '+'24' if ans != "" : break if ans == "" : print('No Solutions') else : print(ans)
# 6330229921 (20) 85 (2021-02-20 19:44) def calc(num1 , op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.split()] cases = generate_all_combinations(num_list, '+-*/' ) c = 0 for a in cases: c1 = calc(calc(calc(a[0], a[1], a[2]), a[3], a[4]), a[5], a[6]) c2 = calc(calc(a[0], a[1], calc(a[2], a[3], a[4])), a[5], a[6]) c3 = calc(calc(a[0], a[1], a[2]), a[3] ,calc(a[4], a[5], a[6])) c4 = calc(a[0], a[1], calc(calc(a[2], a[3], a[4]), a[5], a[6])) c5 = calc(a[0], a[1], calc(a[2], a[3], calc(a[4], a[5], a[6]))) if c1 == 24: print('(', '(', a[0], a[1], a[2], ')', a[3], a[4], ')', a[5], a[6], '= 24') c = 1 break elif c2 == 24: print('(', a[0], a[1], '(', a[2], a[3], a[4], ')', ')', a[5], a[6], '= 24') c = 1 break elif c3 == 24: print('(', a[0], a[1], a[2], ')', a[3], '(', a[4], a[5], a[6], ')', '= 24') c = 1 break elif c4 == 24: print(a[0], a[1], '(', '(', a[2], a[3], a[4], ')', a[5], a[6], ')', '= 24') c = 1 break elif c5 == 24: print(a[0], a[1], '(', a[2], a[3], '(', a[4], a[5], a[6], ')', ')', '= 24') c = 1 break if c == 0: print('No Solutions')
# 6330230421 (20) 86 (2021-02-20 01:16) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '*': r = num1 * num2 elif operation == '/': if num2 != 0: r = num1 / num2 else: r = 0 elif operation == '-': r = num1 - num2 return r #-------------------------------------------------------------- nums = input('Enter 4 integers: ').split() num_int = [int(e) for e in nums] ans = "24" cases = generate_all_combinations( num_int, '+-*/' ) for i in range(len(cases)): c = cases[i] x1 = calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) if x1 == 24: break x2 = calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) if x2 == 24: break x3 = calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])) if x3 == 24: break x4 = calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) if x4 == 24: break x5 = calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) if x5 == 24: break for k in range(0,len(c),2): c[k] = str(c[k]) if x1 == 24: print("( "+"( "+c[0]+" "+c[1]+" "+c[2]+" )"+" "+c[3]+" "+c[4]+" ) "+c[5]+" "+c[6]+" = "+ans) elif x2 == 24: print('( '+c[0]+" "+c[1]+' ( '+c[2]+" "+c[3]+" "+c[4]+ ' )'+' ) '+c[5]+" "+c[6]+" = "+ans) elif x3 == 24: print('( '+c[0]+" "+c[1]+" "+c[2]+" ) "+c[3]+" ( "+c[4]+" "+c[5]+" "+c[6]+" )"+" = "+ans) elif x4 == 24: print(c[0]+" "+c[1]+" ( "+"( "+c[2]+" "+c[3]+" "+c[4]+" ) "+c[5]+" "+c[6]+" )"+" = "+ans) elif x5 == 24: print(c[0]+" "+c[1]+" ( "+c[2]+" "+c[3]+" ( "+c[4]+" "+c[5]+" "+c[6]+" )"+" )"+" = "+ans) else: print("No Solutions")
# 6330232721 (20) 87 (2021-02-21 01:51) def calc(num1, op, num2) : if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/': if num2!=0: r=num1/num2 else: r=math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') listnum = [int(e) for e in nums.split()] cases = generate_all_combinations( listnum, '+-*/' ) for i in cases: i1=calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) i2=calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) i3=calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) i4=calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) i5=calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) #check กรณี if i1==24: print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=','24') break elif i2==24: print('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'=','24') break elif i3==24: print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=','24') break elif i4==24: print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','=','24') break elif i5==24: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','=','24') break if i1!=24 and i2!=24 and i3!=24 and i4!=24 and i5!=24: print("No Solutions")
# 6330233321 (20) 88 (2021-02-22 23:03) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations(nums, '+-*/' ) new_list = [] for i in range(len(cases)): try: s = calc(calc(calc(int(cases[i][0]),cases[i][1],int(cases[i][2])),cases[i][3],int(cases[i][4])),cases[i][5],int(cases[i][6])) if s == 24: t = ('('+' '+'('+' '+str(cases[i][0])+' '+str(cases[i][1])+' '+str(cases[i][2])+' '+')'+' '+str(cases[i][3])+' '+str(cases[i][4]))+' '+')'+' '+str(cases[i][5]+' '+str(cases[i][6])+' = 24') new_list.append(t) except: pass try: s = calc(calc(int(cases[i][0]),cases[i][1],(calc(int(cases[i][2]),cases[i][3],int(cases[i][4])))),cases[i][5],int(cases[i][6])) if s == 24: t = ('('+' '+str(cases[i][0])+' '+str(cases[i][1])+' '+'('+' '+str(cases[i][2])+' '+str(cases[i][3])+' '+str(cases[i][4])+' '+')'+' '+')'+' '+str(cases[i][5])+' '+str(cases[i][6])+' = 24') new_list.append(t) except: pass try: s = calc((calc(int(cases[i][0]),cases[i][1],int(cases[i][2]))),cases[i][3],(calc(int(cases[i][4]),cases[i][5],int(cases[i][6])))) if s == 24: t = ('('+' '+str(cases[i][0])+' '+str(cases[i][1])+' '+str(cases[i][2])+' '+')'+' '+str(cases[i][3])+' '+'('+' '+str(cases[i][4])+' '+str(cases[i][5])+' '+str(cases[i][6])+' '+')'+' = 24') new_list.append(t) except: pass try: s = calc(int(cases[i][0]),cases[i][1],calc(calc(int(cases[i][2]),cases[i][3],int(cases[i][4])),cases[i][5],int(cases[i][6]))) if s == 24: t = (str(cases[i][0])+' '+str(cases[i][1])+' '+'('+' '+'('+' '+str(cases[i][2])+' '+str(cases[i][3])+' '+str(cases[i][4])+' '+')'+' '+str(cases[i][5])+' '+str(cases[i][6])+' '+')'+' = 24') new_list.append(t) except: pass try: s = calc(int(cases[i][0]),cases[i][1],(calc(int(cases[i][2]),cases[i][3],(calc(int(cases[i][4]),cases[i][5],int(cases[i][6])))))) if s == 24: t = (str(cases[i][0])+' '+str(cases[i][1])+' '+'('+' '+str(cases[i][2])+' '+str(cases[i][3])+' '+'('+' '+str(cases[i][4])+' '+str(cases[i][5])+' '+str(cases[i][6])+' '+')'+ ' '+')'+' = 24') new_list.append(t) except: pass if len(new_list) == 0: print('No Solutions') else: print(new_list[0])
# 6330235621 (20) 89 (2021-02-22 17:01) def calc(num1,operation,num2) : if operation == "+" : r=num1+num2 elif operation == "-" : r=num1-num2 elif operation == "*" : r=num1*num2 elif operation == "/" : if num2 == 0 : r = math.inf else: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x = nums.split() x = [int(x[0]),int(x[1]),int(x[2]),int(x[3])] cases = generate_all_combinations( x, '+-*/' ) for i in cases : a=calc(i[0],i[1],i[2]) b=calc(a,i[3],i[4]) c=calc(b,i[5],i[6]) if c!=24 : a=calc(i[2],i[3],i[4]) b=calc(i[0],i[1],a) c=calc(b,i[5],i[6]) if c!=24 : a=calc(i[0],i[1],i[2]) b=calc(i[4],i[5],i[6]) c=calc(a,i[3],b) if c!=24 : a=calc(i[2],i[3],i[4]) b=calc(a,i[5],i[6]) c=calc(i[0],i[1],b) if c!=24 : a=calc(i[4],i[5],i[6]) b=calc(i[2],i[3],a) c=calc(i[0],i[1],b) if c==24 : print(i[0],i[1],"(",i[2],i[3],"(",i[4],i[5],i[6],")",")","= 24") else : print(i[0],i[1],"(","(",i[2],i[3],i[4],")",i[5],i[6],")","= 24") else : print("(",i[0],i[1],i[2],")",i[3],"(",i[4],i[5],i[6],")","= 24") else : print("(",i[0],i[1],"(",i[2],i[3],i[4],")",")",i[5],i[6],"= 24") else : print("(","(",i[0],i[1],i[2],")",i[3],i[4],")",i[5],i[6],"= 24") if c==24 : break if c!=24 : print("No Solutions")
# 6330236221 (16.62) 90 (2021-02-20 01:21) def calc1(n1,n2,n3,n4,i1,i2,i3): if i1 == "+": r = n1 + n2 elif i1 == "-": r = n1 - n2 elif i1 == "*": r = n1 * n2 elif i1 == "/" and n2 != 0: r = n1 / n2 else: r = 999999 if i2 == "+": r = r + n3 elif i2 == "-": r = r - n3 elif i2 == "*": r = r * n3 elif i2 == "/"and n3 != 0: r = r / n3 else: r = 999999 if i3 == "+": r = r + n4 elif i3 == "-": r = r - n4 elif i3 == "*": r = r * n4 elif i3 == "/"and n4 != 0: r = r / n4 else: r = 999999 return(r) def calc2(n2,n1,n3,n4,i1,i2,i3): if i2 == "+": r = n2 + n3 elif i2 == "-": r = n2 - n3 elif i2 == "*": r = n2 * n3 elif i2 == "/" and n3 != 0: r = n2 / n3 else: r = 999999 if i1 == "+": r = n1 + r elif i1 == "-": r = n1 - r elif i1 == "*": r = n1 * r elif i1 == "/"and r != 0: r = n1 / r else: r = 999999 if i3 == "+": r = r + n4 elif i3 == "-": r = r - n4 elif i3 == "*": r = r * n4 elif i3 == "/"and n4 != 0: r = r / n4 else: r = 999999 return(r) def calc3(n3,n1,n2,n4,i1,i2,i3): if i1 == "+": r = n1 + n2 elif i1 == "-": r = n1 - n2 elif i1 == "*": r = n1 * n2 elif i1 == "/"and n2 != 0: r = n1 / n2 else: r = 999999 if i3 == "+": p = n3 + n4 elif i3 == "-": p = n3 - n4 elif i3 == "*": p = n3 * n4 elif i3 == "/"and n4 != 0: p = n3 / n4 else: p = 999999 if i2 == "+": r = r + p elif i2 == "-": r = r - p elif i2 == "*": r = r * p elif i2 == "/"and p != 0: r = r / p else: r = 999999 return(r) def calc4(n4,n1,n2,n3,i1,i2,i3): if i2 == "+": r = n2 + n3 elif i2 == "-": r = n2 - n3 elif i2 == "*": r = n2 * n3 elif i2 == "/"and n3 != 0: r = n2 / n3 else: r = 999999 if i3 == "+": r = r + n4 elif i3 == "-": r = r - n4 elif i3 == "*": r = r * n4 elif i3 == "/"and n4 != 0: r = r / n4 else: r = 999999 if i1 == "+": r = n1 + r elif i1 == "-": r = n1 - r elif i1 == "*": r = n1 * r elif i1 == "/"and r != 0: r = n1 / r else: r = 999999 return(r) def calc5(n1,n4,n2,n3,i1,i2,i3): if i3 == "+": r = n3 + n4 elif i3 == "-": r = n3 - n4 elif i3 == "*": r = n3 * n4 elif i3 == "/": if n4!=0: r = n3/n4 else: r = 9999999 if i2 == "+": r = n2 + r elif i2 == "-": r = n2 - r elif i2 == "*": r = n2 * r elif i2 == "/" and r != 0: r = n2 / r else: r = 9999999 if i1 == "+": r = n1 + r elif i1 == "-": r = n1 - r elif i1 == "*": r = n1 * r elif i1 == "/" and r!=0: r = n1 / r else: r = 9999999 return(r) #--------------------------------------------------------- nums = input('Enter 4 integers: ') t = nums.split() cases = generate_all_combinations( t, '+-*/' ) for t in cases : n1 = int(t[0]) n2 = int(t[2]) n3 = int(t[4]) n4 = int(t[6]) sup = t[1] dot = t[3] less = t[5] i = [sup,dot,less] i1 = i[0] i2 = i[1] i3 = i[2] r1 = calc1(n1,n2,n3,n4,i1,i2,i3) if r1 == 24: z = "(" +' '+ "(" +' '+str(n1)+ ' '+i1 + ' '+str(n2) +' '+")" +' '+i2+ ' ' +str(n3) + ' '+")" + ' '+i3 +' '+str(n4) print(z+" " "="+" "+str(r1)) break r2 = calc2(n2,n1,n3,n4,i1,i2,i3) if r2 == 24 : z= "(" +' '+str(n1)+' '+i1+' '+ "(" +' '+str(n2) +' '+i2+' '+ str(n3) + ' '+")" +' ' ")"+' '+i3 +' '+str(n4) print(z+" " "="+" "+str(r2)) break r3 = calc3(n3,n1,n2,n4,i1,i2,i3) if r3 == 24: z = "(" +' '+str(n1)+ ' '+ i1 + ' '+str(n2) +' '+ ")" +' '+ i2+ ' '+"("+' ' +str(n3) + ' '+ i3 +' '+str(n4)+' '+")" print(z+" " "="+" "+str(r3)) break r4 = calc4(n4,n1,n2,n3,i1,i2,i3) if r4 == 24 : z = str(n1)+ ' '+i1+' '+"("+' '+"("+' '+str(n2) +' '+i2+' '+ str(n3) + ' '+")" + ' '+i3+' '+str(n4)+ ' '+")" print(z+" " "="+" "+str(r4)) break r5 = calc5(n1,n4,n2,n3,i1,i2,i3) if r5 == 24 : z = str(n1)+ ' '+i1 + ' '+"(" + ' '+str(n2) +' '+i2+' ' + "(" +' ' +str(n3) +' '+ i3 +' ' +str(n4)+' '+")" print(z+" " "="+" "+str(r5)) break else : print("No Solution")
# 6330238521 (20) 91 (2021-02-20 21:50) error_symbol = "--" def calc(num1, op, num2): if num1 == error_symbol or num2 == error_symbol: return error_symbol r = 0 try: if op == "+": r = num1 + num2 elif op == "-": r = num1 - num2 elif op == "*": r = num1 * num2 elif op == "/": r = num1 / num2 except ZeroDivisionError: r = error_symbol finally: return r def subPattern(pattern): num1 = pattern[0] num2 = pattern[2] num3 = pattern[4] num4 = pattern[6] op1 = pattern[1] op2 = pattern[3] op3 = pattern[5] result = "" if calc(calc(calc(num1,op1,num2),op2,num3),op3,num4) == 24: result = "( ( {} {} {} ) {} {} ) {} {} = 24".format(*pattern) elif calc(calc(num1,op1,calc(num2,op2,num3)),op3,num4) == 24: result = "( {} {} ( {} {} {} ) ) {} {} = 24".format(*pattern) elif calc(calc(num1,op1,num2),op2,calc(num3,op3,num4)) == 24: result = "( {} {} {} ) {} ( {} {} {} ) = 24".format(*pattern) elif calc(num1,op1,calc(calc(num2,op2,num3),op3,num4)) == 24: result = "{} {} ( ( {} {} {} ) {} {} ) = 24".format(*pattern) elif calc(num1,op1,calc(num2,op2,calc(num3,op3,num4))) == 24: result = "{} {} ( {} {} ( {} {} {} ) ) = 24".format(*pattern) return result #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(n) for n in nums.split()] cases = generate_all_combinations(num_list, "+-*/") result = "No Solutions" for case in cases: if subPattern(case) != "": result = subPattern(case) break print(result)
# 6330239121 (14) 92 (2021-02-22 04:50) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = 0 else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') p = nums.split() num1 = int(p[0]) num2 = int(p[1]) num3 = int(p[2]) num4 = int(p[3]) cases = generate_all_combinations( p , '+-*/' ) equal = False for i in range(len(cases)): x = int(cases[i][0]) x = calc(x,cases[i][1],int(cases[i][2])) x = calc(x,cases[i][3],int(cases[i][4])) x = calc(x,cases[i][5],int(cases[i][6])) if x == 24 : equal = True break if equal: print ("( "+"( " + cases[i][0] + " " + cases[i][1] + " " + cases[i][2] + " ) " + cases[i][3] +" " + cases[i][4] + " ) " + cases[i][5] + " " + cases[i][6] + " = " + "24" ) else: equal = False for i in range(len(cases)): x = calc(int(cases[i][0]),cases[i][1],int(cases[i][2])) y = calc(int(cases[i][4]),cases[i][3],int(cases[i][6])) x = calc(x,cases[i][5],y) if x == 24 : equal = True break if equal: print("( "+cases[i][0],cases[i][1],cases[i][2]+ " ) " + cases[i][5] + " ( " + cases[i][4],cases[i][3],cases[i][6]+ " )"+ " = " + "24" ) else: equal = False for i in range(len(cases)): x = int(cases[i][6]) x = calc(int(cases[i][4]),cases[i][5],x) x = calc(int(cases[i][2]),cases[i][3],x) x = calc(int(cases[i][0]),cases[i][1],x) if x == 24 : equal = True break if equal: print(cases[i][0],cases[i][1],"( "+ cases[i][2] +" "+cases[i][3] + " ( " + cases[i][6] + " " + cases[i][5] + " " + cases[i][4] + " )"+ " )"+ " = " + "24" ) else: print("No Solutions")
# 6330240721 (20) 93 (2021-02-21 13:10) #--------------------------------------------------------- nums = input('Enter 4 integers: ') NCT = nums.split() cases = generate_all_combinations( NCT, '+-*/' ) WayV = [] for i in range (len(cases)) : x = ('('+' '+'('+' '+str(cases[i][0])+' '+str(cases[i][1])+' '+str(cases[i][2])+' '+')'+' '+str(cases[i][3])+' '+str(cases[i][4])+' '+')'+' '+str(cases[i][5])+' '+str(cases[i][6])) try: if eval(x) == 24:WayV.append(x) except: pass x = ('('+' '+str(cases[i][0])+' '+str(cases[i][1])+' '+'('+' '+str(cases[i][2])+' '+str(cases[i][3])+' '+str(cases[i][4])+' '+')'+' '+')'+' '+str(cases[i][5])+' '+str(cases[i][6])) try: if eval(x) == 24:WayV.append(x) except: pass x = ('('+' '+str(cases[i][0])+' '+str(cases[i][1])+' '+str(cases[i][2])+' '+')'+' '+str(cases[i][3])+' '+'('+' '+str(cases[i][4])+' '+str(cases[i][5])+' '+str(cases[i][6])+' '+')') try: if eval(x) == 24:WayV.append(x) except: pass x = (str(cases[i][0])+' '+str(cases[i][1])+' '+'('+' '+'('+' '+str(cases[i][2])+' '+str(cases[i][3])+' '+str(cases[i][4])+' '+')'+' '+str(cases[i][5])+' '+str(cases[i][6])+' '+')') try: if eval(x) == 24:WayV.append(x) except: pass x = (str(cases[i][0])+' '+str(cases[i][1])+' '+'('+' '+str(cases[i][2])+' '+str(cases[i][3])+' '+'('+' '+str(cases[i][4])+' '+str(cases[i][5])+' '+str(cases[i][6])+' '+')'+' '+')') try: if eval(x) == 24:WayV.append(x) except: pass if len(WayV) == 0: print('No Solutions') else: print(WayV[0],'= 24')
# 6330241321 (20) 94 (2021-02-22 18:55) def calc(num1, op, num2): if (num1 == "None") or (num2 == "None") : r = "None" elif op == "+" : r = num1 + num2 elif op == "-" : r = num1 - num2 elif op == "*" : r = num1 * num2 elif (op == "/") and (num2 != 0) : r = num1 / num2 else : r = "None" return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(x) for x in nums.split()] num_list = [] for x in nums : num_list += [int(x)] cases = generate_all_combinations( num_list, '+-*/' ) Have = False for x in cases : n1 = x[0] n2 = x[2] n3 = x[4] n4 = x[6] op1 = x[1] op2 = x[3] op3 = x[5] A = calc(calc(calc(n1,op1,n2),op2,n3),op3,n4) if A == 24 : print("(","(",n1,op1,n2,")",op2,n3,")",op3,n4,"= 24") Have = True break A = calc(calc(n1,op1,calc(n2,op2,n3)),op3,n4) if A == 24 : print("(",n1,op1,"(",n2,op2,n3,")",")",op3,n4,"= 24") Have = True break A = calc(calc(n1,op1,n2),op2,calc(n3,op3,n4)) if A == 24 : print("(",n1,op1,n2,")",op2,"(",n3,op3,n4,")","= 24") Have = True break A = calc(n1,op1,calc(calc(n2,op2,n3),op3,n4)) if A == 24 : print(n1,op1,"(","(",n2,op2, n3,")",op3,n4,")","= 24") Have = True break A = calc(n1,op1,calc(n2,op2,calc(n3,op3,n4))) if A == 24 : print(n1,op1,"(",n2,op2,"(",n3,op3,n4,")",")","= 24") Have = True break if not Have : print("No Solutions")
# 6330242021 (0) 95 (2021-02-21 01:28) def calc(x1,op,x2): if op=='+': a=int(x1)+int(x2) elif op=='-': a=int(x1)-int(x2) elif op=='*': a=int(x1)*int(x2) elif op=='/' and int(x2)!=0: a=int(x1)/int(x2) return a #--------------------------------------------------------- nums = input('Enter 4 integers: ') numss=nums.split() num=[int(numss[0]),int(numss[1]),int(numss[2]),int(numss[3])] cases = generate_all_combinations( num, '+-*/' ) for i in cases: n1=int(i[0]); n2=int(i[2]); n3=int(i[4]); n4=int(i[6]) op1=i[1]; op2=i[3]; op3=i[5] if calc(calc(calc(n1,op1,n2),op2,n3),op3,n4)==24 or calc(calc(calc(n2,op1,n1),op2,n3),op3,n4)==24 : print(((n1,op1,n2),op2,n3),op3,n4,' = 24') break elif calc(calc(n1,op1,calc(n2,op2,n3)),op3,n4)==24 or calc(calc(n1,op1,calc(n3,op2,n2)),op3,n4)==24: print((n1,op1,(n2,op2,n3)),op3,n4,' = 24' ) break elif calc(calc(n1,op1,n2),op2,calc(n3,op3,n4))==24 or calc(calc(n1,op1,n2),op2,calc(n4,op3,n3))==24\ or calc(calc(n2,op1,n1),op2,calc(n3,op3,n4))==24 or calc(calc(n2,op1,n1),op2,calc(n4,op3,n3))==24\ or calc(calc(n3,op1,n4),op2,calc(n1,op3,n2))==24 or calc(calc(n3,op1,n4),op2,calc(n2,op3,n1))==24\ or calc(calc(n4,op1,n3),op2,calc(n1,op3,n2))==24 or calc(calc(n4,op1,n3),op2,calc(n2,op3,n1))==24: print((n1,op1,n2),op2,(n3,op3,n4),' = 24') break elif calc(n1,op1,calc(calc(n2,op2,n3),op3,n4))==24 or calc(n1,op1,calc(calc(n3,op2,n2),op3,n4))==24: print(n1,op1,((n2,op2,n3),op3,n4),' = 24') break elif calc(n1,op1,calc(n2,op2,calc(n3,op3,n4)))==24 or calc(n1,op1,calc(n2,op2,calc(n4,op3,n3)))==24: print(n1,op1,(n2,op2,(n2,op3,n4)),' = 24') break #------------------------------------------------------------------------------------------------------------# elif calc(calc(calc(n1,op1,n2),op2,n4),op3,n3)==24 or calc(calc(calc(n2,op1,n1),op2,n4),op3,n3)==24 : print(((n1,op1,n2),op2,n4),op4,n3,' = 24') break elif calc(calc(n4,op1,calc(n2,op2,n3)),op3,n1)==24 or calc(calc(n4,op1,calc(n3,op2,n2)),op3,n1)==24: print((n4,op1,(n2,op2,n3)),op3,n1,' = 24' ) break elif calc(n4,op1,calc(calc(n2,op2,n3),op3,n1))==24 or calc(n4,op1,calc(calc(n3,op2,n2),op3,n1))==24: print(n4,op1,((n2,op2,n3),op3,n1),' = 24') break elif calc(n2,op1,calc(n1,op2,calc(n3,op3,n4)))==24 or calc(n2,op1,calc(n1,op2,calc(n4,op3,n3)))==24: print(n2,op1,(n1,op2,(n3,op3,n4)),' = 24') break #------------------------------------------------------------------------------------------------------------# elif calc(calc(calc(n1,op1,n3),op2,n2),op3,n4)==24 or calc(calc(calc(n3,op1,n1),op2,n2),op3,n4)==24 : print(((n1,op1,n3),op2,n2),op4,n4,' = 24') break else: print('No Solutions')
# 6330243621 (20) 96 (2021-02-19 23:18) def cala(num1, op1, num2): if op1 == '*' : s1 = num1 * num2 elif op1 == '/' : if not num2 == 0 : s1 = num1 / num2 else : s1 = 0 elif op1 == '+' : s1 = num1 + num2 elif op1 == '-' : s1 = num1 - num2 return s1 def calb(s1, op2, num3): if op2 == '*' : s11 = s1 * num3 elif op2 == '/' : if not num3 == 0 : s11 = s1 / num3 else : s11 = 0 elif op2 == '+' : s11 = s1 + num3 elif op2 == '-' : s11 = s1 - num3 return s11 def calc(s11, op3, num4): if op3 == '*' : sum1 = s11 * num4 elif op3 == '/' : if not num4 == 0 : sum1 = s11 / num4 else : sum1 = 0 elif op3 == '+' : sum1 = s11 + num4 elif op3 == '-' : sum1 = s11 - num4 return sum1 def cald(num2, op2, num3): if op2 == '*' : s2 = num2 * num3 elif op2 == '/' : if not num3 == 0 : s2 = num2 / num3 else : s2 = 0 elif op2 == '+' : s2 = num2 + num3 elif op2 == '-' : s2 = num2 - num3 return s2 def cale(num1, op1, s2): if op1 == '*' : s22 = num1 * s2 elif op1 == '/' : if not s2 == 0 : s22 = num1 / s2 else : s22 = 0 elif op1 == '+' : s22 = num1 + s2 elif op1 == '-' : s22 = num1 - s2 return s22 def calf(s22, op3, num4): if op3 == '*' : sum2 = s22 * num4 elif op3 == '/' : if not num4 == 0 : sum2 = s22 / num4 else : sum2 = 0 elif op3 == '+' : sum2 = s22 + num4 elif op3 == '-' : sum2 = s22 - num4 return sum2 def calg(num3, op3, num4): if op3 == '*' : s3 = num3 * num4 elif op3 == '/' : if not num4 == 0 : s3 = num3 / num4 else : s3 = 0 elif op3 == '+' : s3 = num3 + num4 elif op3 == '-' : s3 = num3 - num4 return s3 def calh(s1, op2, s3): if op2 == '*' : sum3 = s1 * s3 elif op2 == '/' : if not s3 == 0 : sum3 = s1 / s3 else : sum3 = 0 elif op2 == '+' : sum3 = s1 + s3 elif op2 == '-' : sum3 = s1 - s3 return sum3 def cali(s2, op3, num4): if op3 == '*' : s44 = s2 * num4 elif op3 == '/' : if not num4 == 0 : s44 = s2 / num4 else : s44 = 0 elif op3 == '+' : s44 = s2 + num4 elif op3 == '-' : s44 = s2 - num4 return s44 def calj(num1, op1, s44): if op1 == '*' : sum4 = num1 * s44 elif op1 == '/' : if not s44 == 0 : sum4 = num1 / s44 else : sum4 = 0 elif op1 == '+' : sum4 = num1 + s44 elif op1 == '-' : sum4 = num1 - s44 return sum4 def calk(num2, op2, s3): if op2 == '*' : s55 = num2 * s3 elif op2 == '/' : if not s3 == 0 : s55 = num2 / s3 else : s55 = 0 elif op2 == '+' : s55 = num2 + s3 elif op2 == '-' : s55 = num2 - s3 return s55 def call(num1, op1, s55): if op1 == '*' : sum5 = num1 * s55 elif op1 == '/' : if not s55 == 0 : sum5 = num1 / s55 else : sum5 = 0 elif op1 == '+' : sum5 = num1 + s55 elif op1 == '-' : sum5 = num1 - s55 return sum5 #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = nums.split() cases = generate_all_combinations(num, '+-*/') c = 0 for i in range(len(cases)) : case = cases[i] num1,num2,num3,num4 = int(case[0]),int(case[2]),int(case[4]),int(case[6]) op1,op2,op3 = case[1],case[3],case[5] s1 = cala(num1, op1, num2) s11 = calb(s1, op2, num3) sum1 = calc(s11, op3, num4) s2 = cald(num2, op2, num3) s22 = cale(num1, op1, s2) sum2 = calf(s22, op3, num4) s3 = calg(num3, op3, num4) sum3 = calh(s1, op2, s3) s44 = cali(s2, op3, num4) sum4 = calj(num1, op1, s44) s55 = calk(num2, op2, s3) sum5 = call(num1, op1, s55) if sum1 == 24 : c = 1 break elif sum2 == 24 : c = 2 break elif sum3 == 24 : c = 3 break elif sum4 == 24 : c = 4 break elif sum5 == 24 : c = 5 break else : c = 0 if c == 1 : ans = '( ( '+str(num1)+' '+op1+' '+str(num2)+' ) '+op2+' '+str(num3)+' ) '+op3+' '+str(num4)+' = 24' elif c == 2 : ans = '( '+str(num1)+' '+op1+' ( '+str(num2)+' '+op2+' '+str(num3)+' ) ) '+op3+' '+str(num4)+' = 24' elif c == 3 : ans = '( '+str(num1)+' '+op1+' '+str(num2)+' ) '+op2+' ( '+str(num3)+' '+op3+' '+str(num4)+' ) = 24' elif c == 4 : ans = str(num1)+' '+op1+' ( ( '+str(num2)+' '+op2+' '+str(num3)+' ) '+op3+' '+str(num4)+' ) = 24' elif c == 5 : ans = str(num1)+' '+op1+' ( '+str(num2)+' '+op2+' ( '+str(num3)+' '+op3+' '+str(num4)+' ) ) = 24' elif c == 0 : ans = 'No Solutions' print(ans)
# 6330245921 (20) 97 (2021-02-21 00:03) def calc(v, op,y) : if op == '+': r = v+y elif op == '-': r = v-y elif op == '*': r = v*y else: if y ==0 : r = math.inf else : r = v/y return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x = nums.split() cases = generate_all_combinations(x, '+-*/' ) c = 0 for n in cases: if calc(calc(calc(int(n[0]),n[1],int(n[2])),n[3],int(n[4])),n[5],int(n[6])) == 24: print('(','(',str(n[0]),str(n[1]),str(n[2]),')',str(n[3]),str(n[4]),')',str(n[5]),str(n[6]),'=','24') break elif calc(calc(int(n[0]),n[1],calc(int(n[2]),n[3],int(n[4]))),n[5],int(n[6])) == 24: print('(',str(n[0]),str(n[1]),'(',str(n[2]),str(n[3]),str(n[4]),')',')',str(n[5]),str(n[6]),'=','24') break elif calc(calc(int(n[0]),n[1],int(n[2])),n[3],calc(int(n[4]),n[5],int(n[6]))) == 24: print('(',str(n[0]),str(n[1]),str(n[2]),')',str(n[3]),'(',str(n[4]),str(n[5]),str(n[6]),')','=','24') break elif calc(int(n[0]),n[1],calc(calc(int(n[2]),n[3],int(n[4])),n[5],int(n[6]))) == 24: print(str(n[0]),str(n[1]),'(','(',str(n[2]),str(n[3]),str(n[4]),')',str(n[5]),str(n[6]),')','=','24') break elif calc(int(n[0]),n[1],calc(int(n[2]),n[3],calc(int(n[4]),n[5],int(n[6])))) == 24: print(str(n[0]),str(n[1]),'(',str(n[2]),str(n[3]),'(',str(n[4]),str(n[5]),str(n[6]),')',')','=','24') break c+=1 if c == len(cases): print('No Solutions')
# 6330246521 (20) 98 (2021-02-18 16:30) def calc(num1, operation, num2): if operation == "+": r = float(num1) + float(num2) elif operation == "-": r = float(num1) - float(num2) elif operation == "*": r = float(num1) * float(num2) elif operation == "/": if float(num2) == 0.0: r = math.inf else: r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations(num_list, '+-*/') c = 0 for x in cases: if calc(calc(calc(x[0], x[1], x[2]), x[3], x[4]), x[5], x[6]) == 24: print("( (", x[0], x[1], x[2], ")", x[3], x[4], ")", x[5], x[6], "= 24") break if calc(calc(x[0], x[1], calc(x[2], x[3], x[4])), x[5], x[6]) == 24: print("(", x[0], x[1], "(", x[2], x[3], x[4], ") )", x[5], x[6], "= 24") break if calc(calc(x[0], x[1], x[2]), x[3], calc(x[4], x[5], x[6])) == 24: print("(", x[0], x[1], x[2], ")", x[3], "(", x[4], x[5], x[6], ") = 24") break if calc(x[0], x[1], calc(calc(x[2], x[3], x[4]), x[5], x[6])) == 24: print(x[0], x[1], "( (", x[2], x[3], x[4], ")", x[5], x[6], ") = 24") break if calc(x[0], x[1], calc(x[2], x[3], calc(x[4], x[5], x[6]))) == 24: print(x[0], x[1], "(", x[2], x[3], "(", x[4], x[5], x[6], ") ) = 24") break c += 1 if c == len(cases): print("No Solutions")
# 6330247121 (18) 99 (2021-02-22 16:51) import math def calc(a,b,c): if b=='+': j=a+c elif b=='/' and c!=0: j=a/c elif b=='/' and c==0: return 999999999999999 elif b=='*': j=a*c elif b=='-': j=a-c return j j=math.inf #--------------------------------------------------------- nums = [int(m)for m in input('Enter 4 integers: ').split()] cases = generate_all_combinations( nums, '+-*/' ) k = 0 while k<len(cases): i=cases[k] i1 = calc(i[0],i[1],i[2]) i2 = calc(i[2],i[3],i[4]) i3 = calc(i[4],i[5],i[6]) i4 = calc(i1,i[3],i[4]) i5 = calc(i2,i[5],i[6]) i6 = calc(i[0],i[1],i2) i7 = calc(i2,i[5],i[6]) i8 = calc(i[2],i[3],i3) r= calc(i4,i[5],i[6]) t=calc(i6,i[5],i[6]) u=calc(i1,i[3],i3) v=calc(i[0],i[1],i7) w=calc(i[0],i[1],i8) if r==24: print(f'( ( {i[0]} {i[1]} {i[2]} ) {i[3]} {i[4]} ) {i[5]} {i[6]} = 24') break if t==24: print(f'( {i[0]} {i[1]} ( {i[2]} {i[3]} {i[4]} ) ) {i[5]} {i[6]} = 24') break if u==24: print(f'( {i[0]} {i[1]} {i[2]} ) {i[3]} ( {i[4]} {i[5]} {i[6]} ) = 24') break if v==24: print(f'{i[0]} {i[1]} ( {i[2]} {i[3]} ({i[4]} {i[5]} {i[6]} )) = 24') break if w==24: print(f'{i[0]} {i[1]} ( {i[2]} {i[3]} ( {i[4]} {i[5]} {i[6]} ) ) = 24') break k+=1 else: print(f'No Solutions')
# 6330248821 (13.6) 100 (2021-02-22 00:20) def check24(y): if calc(calc(calc(y[0],y[1],y[2]),y[3],y[4]), y[5], y[6]) == 24: return '1' else: if calc(calc(y[0],y[1],calc(y[2],y[3],y[4])) , y[5], y[6]) == 24: return '2' else: if calc(calc(y[0],y[1],y[2]) ,y[3], calc(y[4],y[5],y[6])) == 24: return '3' else: if calc(y[0],y[1],calc(calc(y[2],y[3],y[4]),y[5],y[6])) == 24: return '4' else: if calc(y[0],y[1],calc(y[2],y[3],calc(y[4],y[5],y[6]))) == 24: return '5' else :return False def calc(num1, op, num2): a = 0 if op == '+': a = int(num1) + int(num2) else: if op == '-': a = int(num1) - int(num2) else : if op == '*': a = int(num1) * int(num2) else: if op == '/': if int(num2) != 0: a = int(num1)/int(num2) return a def check24(y): if calc(calc(calc(y[0],y[1],y[2]),y[3],y[4]), y[5], y[6]) == 24: return '1' else: if calc(calc(y[0],y[1],calc(y[2],y[3],y[4])) , y[5], y[6]) == 24: return '2' else: if calc(calc(y[0],y[1],y[2]) ,y[3], calc(y[4],y[5],y[6])) == 24: return '3' else: if calc(y[0],y[1],calc(calc(y[2],y[3],y[4]),y[5],y[6])) == 24: return '4' else: if calc(y[0],y[1],calc(y[2],y[3],calc(y[4],y[5],y[6]))) == 24: return '5' else :return False #--------------------------------------------------------- nums = input('Enter 4 integers: ') t = nums.split() cases = generate_all_combinations(t, '+-*/' ) k = 0 while k < len(cases): n1 = cases[k][0] o1 = cases[k][1] n2 = cases[k][2] o2 = cases[k][3] n3 = cases[k][4] o3 = cases[k][5] n4 = cases[k][6] if k == len(cases)-1 and check24(cases[k]) == False: print('No Solutions') break else: if check24(cases[k]) == False: k += 1 continue else: if check24(cases[k]) == '1': print('( ( '+n1+' '+o1+' '+n2+' ) '+o2+' '+n3+' ) '+o3+' '+n4+' = 24') break else: if check24(cases[k]) == '2': print('( '+n1+ ' '+o1+' ( '+n2+' '+o2+' '+n3+' ) ) '+ o3+ ' '+n4+' = 24') break else: if check24(cases[k]) == '3': print('( '+n1+' '+o1+' '+n2+' ) '+o2+' ( '+n3+' '+o3+' '+n4+') = 24') break else: if check24(cases[k]) == '4': print(n1+' '+o1+' ( ( '+n2+' '+o2+' '+n3+' ) '+o3+' '+n4+' )'+' = 24') break else: if check24(cases[k]) == '5': print(n1+' '+o1+' ( '+n2+ ' '+o2+' ( '+n3+' '+o3+' '+n4+' ) )'+' = 24') break
# 6330249421 (20) 101 (2021-02-21 00:34) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r= num1*num2 elif op == '/': if num2==0 : r=math.inf else: r= num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x=nums.split() found= False for i in range(len(x)) : x[i]=int(x[i]) cases = generate_all_combinations([x[0],x[1],x[2],x[3]], '+-*/' ) for c in cases : a1=calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) a2=calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) a3=calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])) a4=calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) a5=calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) if a1==24: print("(","(",c[0],c[1],c[2],")",c[3],c[4],")",c[5],c[6],"= 24") found = False break elif a2==24: print("(",c[0],c[1],"(",c[2],c[3],c[4],")",")",c[5],c[6],"= 24") found = False break elif a3==24: print("(",c[0],c[1],c[2],")",c[3],"(",c[4],c[5],c[6],") = 24") found = False break elif a4==24: print(c[0],c[1],"(","(",c[2],c[3],c[4],")",c[5],c[6],") = 24") found = False break elif a5==24 : print(c[0],c[1],"(",c[2],c[3],"(",c[4],c[5],c[6],")",") = 24") found = False break else : found = True if found : print("No Solutions")
# 6330250021 (16) 102 (2021-02-21 10:10) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0 : r = num1 / num2 else: r = math.exp(4) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations([int(e) for e in nums.split()], '+-*/') s=False for f in cases: a=calc(f[0], f[1], f[2]) b=calc(a, f[3], f[4]) c=calc(b, f[5], f[6]) if c==24: s=True print('( (',f[0],f[1],f[2],')',f[3],f[4],')',f[5],f[6],'= 24') break a=calc(f[2], f[3], f[4]) b=calc(f[0], f[1], f[4]) c=calc(b, f[5], f[6]) if c==24: s=True print('(',f[0],f[1],'(',f[2],f[3],f[4],') )',f[5],f[6],'= 24') break a=calc(f[0], f[1], f[2]) b=calc(f[4], f[5], f[6]) c=calc(a, f[3], b) if c==24: s=True print('(',f[0],f[1],f[2],')',f[3],'(',f[4],f[5],f[6],') = 24') break a=calc(f[2], f[3], f[4]) b=calc(a, f[5], f[6]) c=calc(f[0], f[1], b) if c==24: s=True print(f[0],f[1],'( (',f[2],f[3],f[4],')',f[5],f[6],') = 24') break a=calc(f[4], f[5], f[6]) b=calc(f[2], f[3], a) c=calc(f[0], f[1], b) if c==24: s=True print(f[0],f[1],'(',f[2],f[3],'(',f[4],f[5],f[6],') ) = 24') break if s==False: print('No Solutions')
# 6330251621 (17.84) 103 (2021-02-21 17:54) def cal(num1, op, num2): if op == '+': r =float(num1)+float(num2) elif op == '-': r =float(num1)-float(num2) elif op == '*': r =float(num1)*float(num2) elif op == '/': if int(num2) == 0: r=123456789 else: r =float(num1)/float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split() cases = generate_all_combinations( a, '+-*/' ) ... a =cases b ='No solutions' for n in range(len(a)): t =cal(a[n][0],a[n][1],a[n][2]) t =cal(t,a[n][3],a[n][4]) t =cal(t,a[n][5],a[n][6]) if t ==24: b = '( ( '+ str(a[n][0])+' '+ str(a[n][1])+' '+str(a[n][2])+' ) ' \ +str(a[n][3])+' '+str(a[n][4])+' ) '+str(a[n][5])+' '+str(a[n][6])+' = 24' break for n in range(int(len(a))): t =cal(a[n][2],a[n][3],a[n][4]) t =cal(a[n][0],a[n][1],t) t =cal(t,a[n][5],a[n][6]) if t ==24: b = '( '+ str(a[n][0])+' '+ str(a[n][1])+' ( '+str(a[n][2])+' ' \ +str(a[n][3])+' '+str(a[n][4])+' ) ) '+str(a[n][5])+' '+str(a[n][6])+' = 24' break for n in range(int(len(a))): t =cal(a[n][0],a[n][1],a[n][2]) s =cal(a[n][4],a[n][5],a[n][6]) t =cal(t,a[n][3],s) if t ==24: b = '( '+ str(a[n][0])+' '+ str(a[n][1])+' '+str(a[n][2])+' ) ' \ +str(a[n][3])+' ( '+str(a[n][4])+' '+str(a[n][5])+' '+str(a[n][6])+' )'+' = 24' break for n in range(int(len(a))): t =cal(a[n][2],a[n][3],a[n][4]) t =cal(t,a[n][5],a[n][6]) t =cal(a[n][0],a[n][1],t) if t ==24: b = str(a[n][0])+' '+ str(a[n][1])+' ( ( '+str(a[n][2])+' ' \ +str(a[n][3])+' '+str(a[n][4])+' ) '+str(a[n][5])+' '+str(a[n][6])+' )'+' = 24' break for n in range(int(len(a))): t =cal(a[n][4],a[n][5],a[n][6]) t =cal(a[n][2],a[n][3],t) t =cal(a[n][0],a[n][1],t) if t ==24: b = str(a[n][0])+' '+ str(a[n][1])+' ( '+str(a[n][2])+' ' \ +str(a[n][3])+' ( '+str(a[n][4])+' '+str(a[n][5])+' '+str(a[n][6])+' ) )'+' = 24' break print(b)
# 6330252221 (19.44) 104 (2021-02-22 21:05) def calc(num1, operation, num2): if operation == '+' : y = float(num1) + float(num2) else: if operation == '-' : y = float(num1) - float(num2) else: if operation == '*' : y = float(num1) * float(num2) else: if operation == '/' : if float(num2)==0: y = float(math.inf) else: y = float(num1) / float(num2) return y #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() cases = generate_all_combinations( nums, '+-*/' ) for e in cases: n1=e[0] o1=e[1] n2=e[2] o2=e[3] n3=e[4] o3=e[5] n4=e[6] a=str(n1) b=str(o1) c=str(n2) d=str(o2) f=str(n3) g=str(o3) h=str(n4) if calc(calc(n1,o1,calc(n2,o2,n3)),o3,n4)==24:#( a + ( b + c ) ) + d x="( " + a + ' ' + b + ' ( '+ c +' '+ d +' '+ f +' ) ) '+ g +' '+ h +' = 24' else: if calc(calc(calc(n1,o1,n2),o2,n3),o3,n4)==24:#( ( a + b ) + c ) + d x="( ( "+ a +' '+ b +' '+ c +' ) '+ d +' '+ f +' ) '+ g +' '+ h +' = 24' else: if calc(n1,o1,calc(n2,o2,calc(n3,o3,n4)))==24:#a + ( b + ( c + d ) ) x=a + ' '+ b +' ( '+ c +' '+ d +' ( '+ f +' '+ g +' '+ h +' ) ) = 24' else: if calc(n1,o1,calc(calc(n2,o2,n3),o3,n4))==24:#a + ( ( b + c ) + d ) x=a +' '+ b +' ( ( '+ c +' '+ d +' '+ f +' ) '+ g +' '+ h +' ) = 24' else: if calc(calc(n1,o1,n2),o2,calc(n3,o3,n4))==24:#(a + b) + ( c + d ) x='( '+ a +' '+ b +c +' ) ' + d + ' ( '+ f +' '+g+' '+h+' ) = 24' else: x="No solutions" if x!="No solutions":break print(x)
# 6330253921 (20) 105 (2021-02-19 01:17) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1*num2 elif op == '/': if num2 != 0: r = num1/num2 else: r = math.inf else: pass return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] cases = generate_all_combinations( nums, '+-*/' ) i = 0 while i in range(len(cases)): case = cases[i] a = case[0] op1 = case[1] b = case[2] op2 = case[3] c = case[4] op3 = case[5] d = case[6] if calc(calc(calc(a, op1, b), op2 ,c), op3, d) == 24: print('( ( '+str(a)+' '+str(op1)+' '+str(b)+' ) '+str(op2)+' '+str(c)+' ) '+str(op3)+' '+str(d)+' = 24') i = -1 elif calc(calc(a, op1, calc(b, op2 ,c)), op3, d) == 24: print('( '+str(a)+' '+str(op1)+' ( '+str(b)+' '+str(op2)+' '+str(c)+' ) ) '+str(op3)+' '+str(d)+' = 24') i = -1 elif calc(calc(a, op1, b), op2, calc(c, op3, d)) == 24: print('( '+str(a)+' '+str(op1)+' '+str(b)+' ) '+str(op2)+' ( '+str(c)+' '+str(op3)+' '+str(d)+' )'+' = 24') i = -1 elif calc(a, op1, calc(calc(b, op2, c), op3, d)) == 24: print(str(a)+' '+str(op1)+' ( ( '+str(b)+' '+str(op2)+' '+str(c)+' ) '+str(op3)+' '+str(d)+' )'+' = 24') i = -1 elif calc(a, op1, calc(b, op2, calc(c, op3, d))) == 24: print(str(a)+' '+str(op1)+' ( '+str(b)+' '+str(op2)+' ( '+str(c)+' '+str(op3)+' '+str(d)+' ) )'+' = 24') i = -1 else: i += 1 if i == len(cases): print('No Solutions')
# 6330254521 (20) 106 (2021-02-18 23:49) def calc(num_1,op,num_2): if op =="+": result_1=num_1+num_2 elif op =="-": result_1=num_1-num_2 elif op =="*": result_1=num_1*num_2 else : if num_2!=0 : result_1=num_1/num_2 else: return 0 return result_1 def compute_1(a,b,c,d,e,f,i): r_1=calc(a,b,c) r_2=calc(r_1,d,e) result_1=calc(r_2,f,i) return result_1 def compute_2(a,b,c,d,e,f,i): r_1=calc(c,d,e) r_2=calc(a,b,r_1) result_2=calc(r_2,f,i) return result_2 def compute_3(a,b,c,d,e,f,i): r_1=calc(a,b,c) r_2=calc(e,f,i) result_3=calc(r_1,d,r_2) return result_3 def compute_4(a,b,c,d,e,f,i): r_1=calc(c,d,e) r_2=calc(r_1,f,i) result_4=calc(a,b,r_2) return result_4 def compute_5(a,b,c,d,e,f,i): r_1=calc(e,f,i) r_2=calc(c,d,r_1) result_5=calc(a,b,r_2) return result_5 #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list=nums.split() cases = generate_all_combinations( num_list, '+-*/' ) solution=[] Solution="" Result_all = False k=[0]*7 v=[0]*7 for i in range(len(cases)): d=cases[i] y=0 for i in range(7) : if i%2 ==0 : v[i] = int(d[i]) else: k[i] = d[i] A=compute_1(v[0],k[1],v[2],k[3],v[4],k[5],v[6]) B=compute_2(v[0],k[1],v[2],k[3],v[4],k[5],v[6]) C=compute_3(v[0],k[1],v[2],k[3],v[4],k[5],v[6]) D=compute_4(v[0],k[1],v[2],k[3],v[4],k[5],v[6]) E=compute_5(v[0],k[1],v[2],k[3],v[4],k[5],v[6]) if A == 24.0: solution+=d Solution="("+" "+"("+" "+solution[0]+" "+solution[1]+" "+solution[2]+" "+")"+" "+solution[3]+" "+solution[4]+" "+")"+" "+solution[5]+" "+solution[6] print(Solution,"= 24") Result_all = True break elif B == 24.0: solution+=d Solution="("+" "+solution[0]+" "+solution[1]+" "+"("+" "+solution[2]+" "+solution[3]+" "+solution[4]+" "+")"+" "+")"+" "+solution[5]+" "+solution[6] print(Solution,"= 24") Result_all = True break elif C == 24.0: solution+=d Solution="("+" "+solution[0]+" "+solution[1]+" "+solution[2]+" "+")"+" "+solution[3]+" "+"("+" "+solution[4]+" "+solution[5]+" "+solution[6]+" "+")" print(Solution,"= 24") Result_all = True break elif D == 24.0: solution+=d Solution=solution[0]+" "+solution[1]+" "+"("+" "+"("+" "+solution[2]+" "+solution[3]+" "+solution[4]+" "+")"+" "+solution[5]+" "+solution[6]+" "+")" print(Solution,"= 24") Result_all = True break elif E == 24.0: solution+=d Solution=solution[0]+" "+solution[1]+" "+"("+" "+solution[2]+" "+solution[3]+" "+"("+" "+solution[4]+" "+solution[5]+" "+solution[6]+" "+")"+" "+")" print(Solution,"= 24") Result_all = True break if Result_all == False: print("No Solutions")
# 6330255121 (20) 107 (2021-02-22 05:33) def calc(num1, op, num2): if ((op == '/') and (num2 == 0)) or ((num1 == 'not true') or (num2 == 'not true')): r = 'not true' elif op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif (op == '/') and (num2 != 0): r = num1 / num2 else: r = 'not true' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() num_list = [] for x in nums: num_list = num_list+[int(x)] cases = generate_all_combinations( num_list, '+-*/' ) found = False for k in cases: num1 = k[0] op1 = k[1] num2 = k[2] op2 = k[3] num3 = k[4] op3 = k[5] num4 = k[6] #--------------------------------case_1-------------------------------- f = calc(num1, op1, num2) s = calc(f, op2, num3) t = calc(s, op3, num4) if t == 24: print('(','(',num1,op1,num2,')',op2,num3,')',op3,num4,'= 24') found = True break #--------------------------------case_2-------------------------------- f = calc(num2, op2, num3) s = calc(num1, op1, f) t = calc(s, op3, num4) if t == 24: print('(',num1,op1,'(',num2,op2,num3,') )',op3,num4,'= 24') found = True break #--------------------------------case_3-------------------------------- f = calc(num1, op1, num2) s = calc(num3, op3, num4) t = calc(f, op2, s) if t == 24: print('(',num1,op1,num2,')',op2,'(',num3,op3,num4,')','= 24') found = True break #--------------------------------case_4-------------------------------- f = calc(num2, op2, num3) s = calc(f, op3, num4) t = calc(num1, op1, s) if t == 24: print(num1,op1,'( (',num2,op2,num3,')',op3,num4,')','= 24') found = True break #--------------------------------case_5-------------------------------- f = calc(num3, op3, num4) s = calc(num2, op2, f) t = calc(num1, op1, s) if t == 24: print(num1,op1,'(',num2,op2,'(',num3,op3,num4,') )','= 24') found = True break if not found: print('No Solutions')
# 6330256821 (20) 108 (2021-02-22 17:37) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-' : r = num1 - num2 elif op == '*' : r = num1 * num2 elif op == '/' : if num2 != 0 : r = num1 / num2 else : r=math.pi return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') z=[int(e) for e in nums.split()] x = generate_all_combinations(z, '+-*/' ) v=0 for i in range(len(x)) : r1= calc(calc(calc(x[i][0],x[i][1],x[i][2]),x[i][3],x[i][4]),x[i][5],x[i][6]) if r1 == 24 : print ("( (",x[i][0],x[i][1],x[i][2],")",x[i][3],x[i][4],")",x[i][5],x[i][6],"=",int(r1)) v+=1 break r2= calc(calc(x[i][0],x[i][1],calc(x[i][2],x[i][3],x[i][4])),x[i][5],x[i][6]) if r2 == 24 : print ("(",x[i][0],x[i][1],"(",x[i][2],x[i][3],x[i][4],")",")",x[i][5],x[i][6],"=",int(r2)) v+=1 break r3= calc((calc(x[i][0],x[i][1],x[i][2])),x[i][3],(calc(x[i][4],x[i][5],x[i][6]))) if r3 == 24 : print ("(",x[i][0],x[i][1],x[i][2],")",x[i][3],"(",x[i][4],x[i][5],x[i][6],")","=",int(r3)) v+=1 break r4= calc(x[i][0],x[i][1],calc(calc(x[i][2],x[i][3],x[i][4]),x[i][5],x[i][6])) if r4 == 24 : print (x[i][0],x[i][1],"( (",x[i][2],x[i][3],x[i][4],")",x[i][5],x[i][6],")","=",int(r4)) v+=1 break r5= calc(x[i][0],x[i][1],calc(x[i][2],x[i][3],calc(x[i][4],x[i][5],x[i][6]))) if r5 == 24 : print (x[i][0],x[i][1],"(",x[i][2],x[i][3],"(",x[i][4],x[i][5],x[i][6],") )","=",int(r5)) v+=1 break if v==0 : print('No Solutions')
# 6330257421 (20) 109 (2021-02-21 23:35) def calc(num1, op, num2): if op == '+': r = float(num1)+float(num2) elif op == '-': r = float(num1)-float(num2) elif op == '*': r = float(num1)*float(num2) elif op == '/': if(float(num2) != 0): r = float(num1)/float(num2) else: r=100000000000 return float(r) def find(cases): x=0 i=0 j=1 while(x!=24): if(i==len(cases)): j=6 break; if(j==1): a1=calc(cases[i][0], cases[i][1], cases[i][2]) a2=calc(a1, cases[i][3], cases[i][4]) x=calc(a2, cases[i][5], cases[i][6]) j=j+1 elif(j==2): a1=calc(cases[i][2], cases[i][3], cases[i][4]) a2=calc(cases[i][0], cases[i][1], a1) x=calc(a2, cases[i][5], cases[i][6]) j=j+1 elif(j==3): a1=calc(cases[i][0], cases[i][1], cases[i][2]) a2=calc(cases[i][4], cases[i][5], cases[i][6]) x=calc(a1, cases[i][3], a2) j=j+1 elif(j==4): a1=calc(cases[i][2], cases[i][3], cases[i][4]) a2=calc(a1, cases[i][5], cases[i][6]) x=calc(cases[i][0], cases[i][1], a2) j=j+1 elif(j==5): a1=calc(cases[i][4], cases[i][5], cases[i][6]) a2=calc(cases[i][2], cases[i][3], a1) x=calc(cases[i][0], cases[i][1], a2) j=1 i=i+1 if(j==2): print('( ( '+cases[i][0]+' '+cases[i][1]+' '+cases[i][2]+' ) '+cases[i][3]+' '+cases[i][4]+' ) '+cases[i][5]+' '+cases[i][6]+' = 24') if(j==3): print('( '+cases[i][0]+' '+cases[i][1]+' ( '+cases[i][2]+' '+cases[i][3]+' '+cases[i][4]+' ) ) '+cases[i][5]+' '+cases[i][6]+' = 24') if(j==4): print('( '+cases[i][0]+' '+cases[i][1]+' '+cases[i][2]+' ) '+cases[i][3]+' ( '+cases[i][4]+' '+cases[i][5]+' '+cases[i][6]+' )'+' = 24') if(j==5): print(cases[i][0]+' '+cases[i][1]+' ( ( '+cases[i][2]+' '+cases[i][3]+' '+cases[i][4]+' ) '+cases[i][5]+' '+cases[i][6]+' )'+' = 24') if(j==1): i=i-1 print(cases[i][0]+' '+cases[i][1]+' ( '+cases[i][2]+' '+cases[i][3]+' ( '+cases[i][4]+' '+cases[i][5]+' '+cases[i][6]+' ) )'+' = 24') if(j==6): print('No Solutions') #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() cases = generate_all_combinations(nums , '+-*/' ) find(cases)
# 6330258021 (20) 110 (2021-02-18 11:40) def calc(num1,op,num2) : if op == '+' : return num1+num2 elif op == '-' : return num1-num2 elif op == '*' : return num1*num2 elif op == '/' and num2 != 0 : return num1/num2 elif op == '/' and num2 == 0 : return float('nan') #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( [int(i) for i in nums.split()], '+-*/' ) w = False for i in cases : if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24 : print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=',24) w = True break if calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) == 24 : print('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'=',24) w = True break if calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) == 24 : print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=',24) w = True break if calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) == 24 : print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','=',24) w = True break if calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) == 24 : print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','=',24) w = True break if not w : print('No Solutions')
# 6330259721 (18) 111 (2021-02-21 23:30) def calc(num1, operation, num2) : if operation == "+" : r = float(num1) + float(num2) elif operation == "-" : r = float(num1) - float(num2) elif operation == "*" : r = float(num1) * float(num2) elif operation == "/" : num2 = int(num2) if num2 == 0 : r = math.inf else : r = float(num1) / num2 return r def genre(cases,i): for e in range(5): if e == 0 : r = calc(cases[i][0], cases[i][1], cases[i][2]) if r != math.inf : r = calc(r, cases[i][3], cases[i][4]) if r != math.inf : r = calc(r, cases[i][5], cases[i][6]) if r == 24 : print("( ( " + str(cases[i][0]) + " " + str(cases[i][1]) + " " + str(cases[i][2])+ " ) " + str(cases[i][3]) + " " + str(cases[i][4]) + " ) " + str(cases[i][5]) +" " + str(cases[i][6]) + " = 24") break if e == 1 : r = calc(cases[i][2], cases[i][3], cases[i][4]) if r != math.inf : r = calc(cases[i][0], cases[i][1], r) if r != math.inf : r = calc(r, cases[i][5], cases[i][6]) if r == 24 : print("( " + str(cases[i][0]) + " " + str(cases[i][1]) + " ( " + str(cases[i][2])+ " " + str(cases[i][3]) + " " + str(cases[i][4]) + " ) ) " + str(cases[i][5]) +" " + str(cases[i][6]) + " = 24") break if e == 2 : r31 = calc(cases[i][0], cases[i][1], cases[i][2]) if r != math.inf : r32 = calc(cases[i][4], cases[i][5], cases[i][6]) if r != math.inf : r = calc(r31, cases[i][3], r32) if r == 24 : print("( " + str(cases[i][0]) + " " + str(cases[i][1]) + " " + str(cases[i][2])+ " ) " + str(cases[i][3]) + " ( " + str(cases[i][4]) + " " + str(cases[i][5]) +" " + str(cases[i][6]) + " )" + " = 24") break if e == 3 : r = calc(cases[i][2], cases[i][3], cases[i][4]) if r != math.inf : r = calc(r, cases[i][5], cases[i][6]) if r != math.inf : r = calc(cases[i][0], cases[i][1], r) if r == 24 : print(str(cases[i][0]) + " " + str(cases[i][1]) + " ( ( " + str(cases[i][2])+ " " + str(cases[i][3]) + " " + str(cases[i][4]) + " ) " + str(cases[i][5]) +" " + str(cases[i][6]) + " )" + " = 24") break if e == 4 : r = calc(cases[i][4], cases[i][5], cases[i][6]) if r != math.inf : r = calc(cases[i][2], cases[i][3], r) if r != math.inf : r = calc(cases[i][0], cases[0][1], r) if r == 24 : print(str(cases[i][0]) + " " + str(cases[i][1]) + " ( " + str(cases[i][2])+ " " + str(cases[i][3]) + " ( " + str(cases[i][4]) + " " + str(cases[i][5]) +" " + str(cases[i][6]) + " ) )" + " = 24") break return(r) #--------------------------------------------------------- nums = input('Enter 4 integers: ') w = nums.split() cases = generate_all_combinations( w, '+-*/' ) r = 0 i = 0 while r != 24 : if i == len(cases) : print("No Solutions") break r = genre(cases,i) i += 1
# 6330260221 (20) 112 (2021-02-20 13:54) def cal(num1,op,num2): if op == '+' : r = num1 + num2 return r elif op == '-' : r = num1 - num2 return r elif op == '*' : r = num1 * num2 return r elif op == '/' : if num2 == 0: r = math.inf return r else: r = num1 / num2 return r def ans1(): ans1 = cal(N_L[0],N_L[1],N_L[2]) ans2 = cal(ans1,N_L[3],N_L[4]) Ans1 = cal(ans2,N_L[5],N_L[6]) return Ans1 def ans2(): ans1 = cal(N_L[2],N_L[3],N_L[4]) ans2 = cal(N_L[0],N_L[1],ans1) Ans2 = cal(ans2,N_L[5],N_L[6]) return Ans2 def ans3(): ans1 = cal(N_L[0],N_L[1],N_L[2]) ans2 = cal(N_L[4],N_L[5],N_L[6]) Ans3 = cal(ans1,N_L[3],ans2) return Ans3 def ans4(): ans1 = cal(N_L[2],N_L[3],N_L[4]) ans2 = cal(ans1,N_L[5],N_L[6]) Ans4 = cal(N_L[0],N_L[1],ans2) return Ans4 def ans5(): ans1 = cal(N_L[4],N_L[5],N_L[6]) ans2 = cal(N_L[2],N_L[3],ans1) Ans5 = cal(N_L[0],N_L[1],ans2) return Ans5 #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split() num_list = [int(a[0]),int(a[1]),int(a[2]),int(a[3])] cases = generate_all_combinations(num_list, '+-*/') for i in range(len(cases)): N_L = cases[i] if ans1() == 24: print('(','(',N_L[0],N_L[1],N_L[2],')',N_L[3],N_L[4],')',N_L[5],N_L[6],'=','24') break elif ans2() == 24: print('(',N_L[0],N_L[1],'(',N_L[2],N_L[3],N_L[4],')',')',N_L[5],N_L[6],'=','24') break elif ans3() == 24: print('(',N_L[0],N_L[1],N_L[2],')',N_L[3],'(',N_L[4],N_L[5],N_L[6],')','=','24') break elif ans4() == 24: print(N_L[0],N_L[1],'(','(',N_L[2],N_L[3],N_L[4],')',N_L[5],N_L[6],')','=','24') break elif ans5() == 24: print(N_L[0],N_L[1],'(',N_L[2],N_L[3],'(',N_L[4],N_L[5],N_L[6],')',')','=','24') break else: print('No Solutions')
# 6330261921 (20) 113 (2021-02-19 22:34) def c(num1,operation,num2): num1=float(num1) num2=float(num2) if operation=='+': r=(num1)+(num2) elif operation=='-': r=(num1)-(num2) elif operation=='*': r=(num1)*(num2) elif operation=='/': if (num2)==0:r=float('nan') else: r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... ... cases = generate_all_combinations( nums.split(), '+-*/' ) ... p = 0 for a in cases: b1=c(a[0],a[1],a[2]) b2=c(b1,a[3],a[4]) b3=c(b2,a[5],a[6]) if b3==24 : print('( (',a[0],a[1],a[2],')',a[3],a[4],')',a[5],a[6],'= 24') p+=1 break b1=c(a[2],a[3],a[4]) b2=c(a[0],a[1],b1) b3=c(b2,a[5],a[6]) if b3==24 : print('(',a[0],a[1],'(',a[2],a[3],a[4],') )',a[5],a[6],'= 24') p+=1 break b1=c(a[0],a[1],a[2]) b2=c(a[4],a[5],a[6]) b3=c(b1,a[3],b2) if b3==24 : print('(',a[0],a[1],a[2],')',a[3],'(',a[4],a[5],a[6],')','= 24') p+=1 break b1=c(a[2],a[3],a[4]) b2=c(b1,a[5],a[6]) b3=c(a[0],a[1],b2) if b3==24 : print(a[0] ,a[1],'( (' ,a[2],a[3],a[4] ,')' ,a[5],a[6], ')','= 24') p+=1 break b1=c(a[4],a[5],a[6]) b2=c(a[2],a[3],b1) b3=c(a[0],a[1],b2) if b3==24 : print(a[0],a[1],'(',a[2],a[3] ,'(', a[4],a[5],a[6],') )','= 24') p+=1 break if p ==0: print('No Solutions')
# 6330262521 (20) 114 (2021-02-18 11:42) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = float('inf') else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = nums.split() res = 0 cases = generate_all_combinations( n, '+-*/' ) for i in range(len(cases)): res = calc(calc(calc(int(cases[i][0]),cases[i][1],int(cases[i][2])),cases[i][3],int(cases[i][4])),cases[i][5],int(cases[i][6])) if res == 24: print("( ( " + cases[i][0] + " " + cases[i][1] + " " + cases[i][2] + " ) " + cases[i][3] + " " + cases[i][4] + " ) " + cases[i][5] + " " + cases[i][6] + " = 24") break res = calc(calc(int(cases[i][0]),cases[i][1],calc(int(cases[i][2]),cases[i][3],int(cases[i][4]))),cases[i][5],int(cases[i][6])) if res == 24: print("( " + cases[i][0] + " " + cases[i][1] + " ( " + cases[i][2] + " " + cases[i][3] + " " + cases[i][4] + " ) ) " + cases[i][5] + " " + cases[i][6] + " = 24") break res = calc(calc(int(cases[i][0]),cases[i][1],int(cases[i][2])),cases[i][3],calc(int(cases[i][4]),cases[i][5],int(cases[i][6]))) if res == 24: print("( " + cases[i][0] + " " + cases[i][1] + " " + cases[i][2] + " ) " + cases[i][3] + " ( " + cases[i][4] + " " + cases[i][5] + " " + cases[i][6] + " )" + " = 24") break res = calc(int(cases[i][0]),cases[i][1],calc(calc(int(cases[i][2]),cases[i][3],int(cases[i][4])),cases[i][5],int(cases[i][6]))) if res == 24: print(cases[i][0] + " " + cases[i][1] + " ( ( " + cases[i][2] + " " + cases[i][3] + " " + cases[i][4] + " ) " + cases[i][5] + " " + cases[i][6] + " )" + " = 24") break res = calc(int(cases[i][0]),cases[i][1],calc(int(cases[i][2]),cases[i][3],calc(int(cases[i][4]),cases[i][5],int(cases[i][6])))) if res == 24: print(cases[i][0] + " " + cases[i][1] + " ( " + cases[i][2] + " " + cases[i][3] + " ( " + cases[i][4] + " " + cases[i][5] + " " + cases[i][6] + " ) )" + " = 24") break else: print("No Solutions")
# 6330263121 (17.6) 115 (2021-02-22 12:58) #--------------------------------------------------------- def go(h,y,j): if y=='+': l=h+j elif y=='*': l=h*j elif y=='/' and j!=0: l=h/j elif y=='/' and j==0: return 100000000000000 elif y=='-': l=h-j return l l=math.inf #--------------------------------------------------------- nums = [int(i)for i in input('Enter 4 integers: ').split()] ... ... cases = generate_all_combinations( nums, '+-*/' ) k=0 while k<len(cases): g=cases[k] x=go(go(go(g[0],g[1],g[2]),g[3],g[4]),g[5],g[6]) y=go(go(g[0],g[1],go(g[2],g[3],g[4])),g[5],g[6]) z=go(go(g[0],g[1],g[2]),g[3],go(g[4],g[5],g[6])) w=go(g[0],g[1],go(g[2],g[3],go(g[4],g[5],g[6]))) e=go(g[0],g[1],go(g[2],g[3],go(g[4],g[5],g[6]))) if x==24: print(f'( ( {g[0]} {g[1]} {g[2]} ) {g[3]} {g[4]} ) {g[5]} {g[6]} = 24') break if y==24: print(f'( {g[0]} {g[1]} ( {g[2]} {g[3]} {g[4]} ) ) {g[5]} {g[6]} = 24') break if z==24: print(f'( {g[0]} {g[1]} {g[2]} ) {g[3]} ( {g[4]} {g[5]} {g[6]} ) = 24') break if w==24: print(f'{g[0]} {g[1]} ( {g[2]} {g[3]} ( {g[4]} {g[5]} {g[6]} )) = 24') break if e==24: print(f'{g[0]} {g[1]} ( {g[2]} {g[3]} ( {g[4]} {g[5]} {g[6]} ) ) = 24') break k+=1 else: print(f'No Solutions')
# 6330264821 (20) 116 (2021-02-22 09:09) def calc(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if float(num2) == 0 : r = 1000000000*math.pi else: r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = nums.split() c = 0 ... cases = generate_all_combinations( num, '+-*/' ) for e in cases : if calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6])) == 24: if c == 1 : break print('( '+str(e[0])+' '+e[1]+' '+str(e[2])+' )'+' '+e[3]+' ( '+str(e[4])+' '+e[5]+' '+str(e[6])+' )'+' = 24') c += 1 elif calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6]) == 24: if c == 1 : break print('( ( '+str(e[0])+' '+e[1]+' '+str(e[2])+' )'+' '+e[3]+' '+str(e[4])+' ) '+e[5]+' '+str(e[6])+' = 24') c += 1 elif calc(e[0],e[1],(calc(calc(e[2],e[3],e[4]),e[5],e[6]))) == 24: if c == 1 : break print(str(e[0])+' '+e[1]+' ( ( '+str(e[2])+' '+e[3]+' '+str(e[4])+' ) '+e[5]+' '+str(e[6])+' )'+' = 24') c += 1 elif calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6]))) == 24: if c == 1 : break print(str(e[0])+' '+e[1]+' ( '+str(e[2])+' '+e[3]+' ( '+str(e[4])+' '+e[5]+' '+str(e[6])+' ) )'+' = 24') c += 1 elif calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6]) == 24: if c == 1 : break print('( '+str(e[0])+' '+e[1]+' ( '+str(e[2])+' '+e[3]+' '+str(e[4])+' ) ) '+e[5]+' '+str(e[6])+' = 24') c += 1 if c == 0 : print('No Solutions') ...
# 6330265421 (18) 117 (2021-02-21 22:48) def calc(num1, op, num2): if (num1 == '0') or (num2 == '0'): r = '0' elif op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = '0' else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.split()] cases = generate_all_combinations( num_list, '+-*/' ) final = 0 for l in cases: a,op1,b,op2,c,op3,d = l[0],l[1],l[2],l[3],l[4],l[5],l[6] ans = (calc(a,op1,b)) ans = (calc(ans,op2,c)) ans = (calc(ans,op3,d)) if ans == 24: final = 1 break ans = calc(b,op2,c) ans = calc(a,op1,ans) ans = calc(ans,op3,d) if ans == 24: final = 2 break ans = calc(a,op1,b) ans = calc(ans,op2,calc(c,op3,d)) if ans == 24: final = 3 break ans = calc(b,op2,c) ans = calc(ans,op3,d) ans = calc(a,op1,ans) if ans == 24: final = 4 break ans = calc(c,op3,d) ans = calc(b,op2,ans) ans = calc(a,op1,ans) if ans == 24: final = 5 break if final == 1: print('(','(',a,op1,b,')',op2,c,')',op3,d,'=',int(ans)) elif final == 2: print('(',a,op1,'(',b,op2,c,')',')',op3,d,'=',int(ans)) elif final == 3: print('(',a,op1,b,')',op2,'(',c,op3,d,')','=',int(ans)) elif final == 4: print(a,op1,'(','(',b,op1,c,')',op3,d,')','=',int(ans)) elif final == 5: print(a,op1,'(',b,op2,'(',c,op3,d,')',')','=',int(ans)) else: print('No Solutions')
# 6330266021 (15.84) 118 (2021-02-22 19:42) def cal(num1,operation,num2): if operation == '+': r = float(num1)+float(num2) elif operation == '-': r = float(num1)-float(num2) elif operation == '*': r = float(num1)*float(num2) elif operation == '/': if int(num2) == 0: r = 99**99 else: r = float(num1)/float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') w = nums.split() cases = generate_all_combinations( w, '+-*/' ) w = cases z = "No solutions" for i in range(len(w)): c = cal(w[i][0],w[i][1],w[i][2]) c = cal(c,w[i][3],w[i][4]) c = cal(c,w[i][5],w[i][6]) if c == 24: z = "( ("+" "+str(w[i][0])+" "+str(w[i][1])+" "+str(w[i][2])+" "+")"+" "+"str(w[i][3])"+" "+str(w[i][4])+" "+str(w[i][5])+" "+str(w[i][6])+" "+"="+" "+"24" break for i in range(int(len(w))): c = cal(w[i][2],w[i][3],w[i][4]) c = cal(w[i][0],w[i][1],c) c = cal(c,w[i][5],w[i][6]) if c == 24: z = "("+" "+str(w[i][0])+" "+str(w[i][1])+" "+"("+" "+str(w[i][2])+" "+str(w[i][3])+" "+str(w[i][4])+" "+")"+" "+")"+" "+str(w[i][5])+" "+str(w[i][6])+" "+"="+" "+"24" break for i in range(int(len(w))): c = cal(w[i][0],w[i][1],w[i][2]) f = cal(w[i][4],w[i][5],w[i][6]) c = cal(c,w[i][3],f) if c == 24: z = "("+" "+str(w[i][0])+" "+str(w[i][1])+" "+str(w[i][2])+" "+")"+" "+str(w[i][3])+" "+"("+" "+str(w[i][4])+" "+str(w[i][5])+" "+str(w[i][6])+" "+")"+" "+"="+" "+"24" break for i in range(int(len(w))): c = cal(w[i][2],w[i][3],w[i][4]) c = cal(c,w[i][5],w[i][6]) c = cal(w[i][0],w[i][1],c) if c == 24: z = str(w[i][0])+" "+str(w[i][1])+" "+"("+" "+"("+" "+str(w[i][2])+" "+str(w[i][3])+" "+w[i][4]+" "+")"+" "+str(w[i][5])+" "+w[i][6]+" "+")"+" "+"="+" "+"24" break for i in range(int(len(w))): c = cal(w[i][4],w[i][5],w[i][6]) c = cal(w[i][2],w[i][3],c) c = cal(w[i][0],w[i][1],c) if c == 24: z = str(w[i][0])+" "+str(w[i][1])+" "+"("+" "+str(w[i][2])+" "+str(w[i][3])+" "+"("+" "+str(w[i][4])+" "+str(w[i][5])+" "+str(w[i][6])+" "+")"+" "+")"+" "+"="+" "+"24" break print(z)
# 6330267721 (14.08) 119 (2021-02-22 12:50) nums = input('Enter 4 integers: ') cases = generate_all_combinations(nums.split(), '+-*/' ) found = False for i in cases : num1 = i[0]; num2 = i[2]; num3 = i[4]; num4 = i[6]; op1 = i[1]; op2 = i[3]; op3 = i[5] try: eval('(('+num1+op1+num2+')'+op2+num3+')'+op3+num4) if eval('(('+num1+op1+num2+')'+op2+num3+')'+op3+num4) == 24 : print('( (',num1,op1,num2+ ' )',op2,num3+ ' ) '+op3,num4+ ' = 24') found = True break except: pass try: eval('('+num1+op1+'('+num2+op2+num3+'))'+op3+num4) if eval('(('+num1+op1+num2+')'+op2+num3+')'+op3+num4) == 24 : print('( '+num1,op1+' ( '+num2,op2,num3+' ) ) '+op3,num4+ ' = 24') found = True break except: pass try: eval('('+num1+op1+num2+')'+op2+'('+num3+op3+num4+')') if eval('('+num1+op1+num2+')'+op2+'('+num3+op3+num4+')') == 24: print('( ',num1,op1,num2+' ) '+op2+' ( '+num3,op3,num4+' )'+ ' = 24') found = True break except: pass try: eval(num1+op1+'(('+num2+op2+num3+')'+op3+num4+')') if eval(num1+op1+'(('+num2+op2+num3+')'+op3+num4+')') == 24 : print(num1,op1+' ( ( '+num2,op2,num3+' ) '+op3,num4+' )'+ ' = 24') found = True break except: pass try: eval(num1+op1+'('+num2+op2+'('+num3+op3+num4+'))') if eval(num1+op1+'('+num2+op2+'('+num3+op3+num4+'))') == 24 : print(num1,op1+' ( '+num2,op2+' ( '+num3,op3,num4+' )'+ ' = 24') found = True break except: pass if found == False : print('No Solutions')
# 6330268321 (12.08) 120 (2021-02-21 18:23) def calc(num1,op,num2): if op=="+": r=int(num1)+int(num2) elif op=="-": r=int(num1)-int(num2) elif op=="*": r=int(num1)*int(num2) elif op=="/": if int(num2)!=0: r=int(num1)/int(num2) else: r=0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() cases = generate_all_combinations(nums , '+-*/' ) for i in range(len(cases)): a=cases[i] u1=calc(a[0],a[1],a[2]) v1=calc(u1,a[3],a[4]) f1=calc(v1,a[5],a[6]) #----------------------------------- u2=calc(a[2],a[3],a[4]) v2=calc(u2,a[1],a[0]) f2=calc(v2,a[5],a[6]) #----------------------------------- u3=calc(a[0],a[1],a[2]) v3=calc(a[4],a[5],a[6]) f3=calc(u3,a[3],v3) #----------------------------------- u4=calc(a[2],a[3],a[4]) v4=calc(u4,a[5],a[6]) f4=calc(a[0],a[1],v4) #----------------------------------- u5=calc(a[4],a[5],a[6]) v5=calc(a[2],a[3],u5) f5=calc(a[0],a[1],v5) if f1==24: break elif f2==24: break elif f3==24: break elif f4==24: break elif f5==24: break if f1==24: print("(","(",a[0],a[1],a[2],")",a[3],a[4],")",a[5],a[6],"=",24) elif f2==24: print("(",a[0],a[1],"(",a[2],a[3],a[4],")",")",a[5],a[6],"=",24) elif f3==24: print("(",a[0],a[1],a[2],")",a[3],"(",a[4],a[5],a[6],")","=",24) elif f4==24: print(a[0],a[1],"(","(",a[2],a[3],a[4],")",a[5],a[6],")","=",24) elif f5==24: print(a[0],a[1],"(",a[2],a[3],"(",a[4],a[5],a[6],")","=",24) else: print("No Solutions")
# 6330269021 (19.84) 121 (2021-02-21 18:05) def subCases(case): subCase1 = ' '.join(['(', '('] + [str(case[0]), case[1], str(case[2])] + [')'] + [case[3], str(case[4])] + [')'] + [case[5], str(case[6])]) subCase2 = ' '.join(['('] + [str(case[0]), case[1]] + ['('] + [str(case[2]), case[3], str(case[4])] + [')', ')'] + [case[5], str(case[6])]) subCase3 = ' '.join(['('] + [str(case[0]), case[1], str(case[2])] + [')'] + [case[3]] + ['('] + [str(case[4]), case[5], str(case[6])] + [')']) subCase4 = ' '.join([str(case[0]), case[1]] + ['(', '('] + [str(case[2]), case[3], str(case[4])] + [')'] + [case[5], str(case[6])] + [')']) subCase5 = ' '.join([str(case[0]), case[1]] + ['('] + [str(case[2]), case[3]] + ['('] + [str(case[4]), case[5], str(case[6])] + [')', ')']) return subCase1, subCase2, subCase3, subCase4, subCase5 #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_str = nums.split() num_list = [int(x) for x in num_str] cases = generate_all_combinations( num_list, '+-*/' ) ans = None for case in cases: for subCase in subCases(case): try: if eval(subCase) == 24: ans = subCase + ' ' + '= 24' break except: continue if ans != None: break else: ans = 'No solutions' print(ans)
# 6330270521 (15.88) 122 (2021-02-22 04:49) def calc(num1, op, num2) : if op == '+' : r = float(num1)+float(num2) return r if op == '-' : r = float(num1)-float(num2) return r if op == '*' : r = float(num1)*float(num2) return r if op == '/' : try : r = float(num1)/float(num2) except ZeroDivisionError : r = 0.0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations( num_list , '+-*/' ) x = 0 for i in cases : if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24.0 : print('( ( '+i[0]+' '+i[1]+' '+i[2]+' ) '+i[3]+' '+i[4]+' ) '+i[5]+' '+i[6]+' = 24') x = 1 break elif calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) == 24.0 : print(i[0]+' '+i[1]+' '+'( '+i[2]+' '+i[3]+' '+i[4]+' ) '+i[5]+' '+i[6]+' = 24') x = 1 break elif calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) == 24.0 : print('( '+i[0]+' '+i[1]+' '+i[2]+' ) '+i[3]+' ( '+i[4]+' '+i[5]+' '+i[6]+' )'+' = 24') x = 1 break elif calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) == 24.0 : print(i[0]+' '+i[1]+' ( '+i[2]+' '+i[3]+' ( '+i[4]+' '+i[5]+' '+i[6]+' ) )'+' = 24') x = 1 break elif calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) == 24.0 : print(i[0]+' '+i[1]+' ( '+i[2]+' '+i[3]+' '+i[4]+' ) '+i[5]+' '+i[6]+' )'+' = 24') x = 1 break if x == 0 : print('No Solutions')
# 6330271121 (20) 123 (2021-02-21 10:24) def cal(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1*num2 elif op == '/': if num2 != 0: r = num1/num2 else: r = 1.234**9.17 return r #--------------------------------------------------------- nums = [int(e) for e in input('Enter 4 integers: ').split()] cases = generate_all_combinations( nums, '+-*/' ) C = cases c = 0 for i in range(len(C)): a = C[i] if cal(cal(cal(a[0], a[1], a[2]), a[3], a[4]), a[5], a[6]) == 24 : c = 1 print('(','(',a[0],a[1],a[2],')',a[3],a[4],')',a[5],a[6],'= 24') break if cal(cal(a[0], a[1], cal(a[2],a[3],a[4])),a[5],a[6]) == 24: c = 1 print('(',a[0],a[1],'(',a[2],a[3],a[4],')',')',a[5],a[6],'= 24') break if cal(cal(a[0],a[1],a[2]),a[3], cal(a[4],a[5],a[6])) == 24: c = 1 print('(',a[0],a[1],a[2],')',a[3],'(',a[4],a[5],a[6],')','= 24') break if cal(a[0],a[1],cal(cal(a[2],a[3],a[4]),a[5],a[6])) == 24: c = 1 print(a[0],a[1],'(','(',a[2],a[3],a[4],')',a[5],a[6],')','= 24') break if cal(a[0],a[1],cal(a[2],a[3],cal(a[4],a[5],a[6]))) == 24: c = 1 print(a[0],a[1],'(',a[2],a[3],'(',a[4],a[5],a[6],')',')','= 24') break if c == 0: print('No Solutions')
# 6330272821 (20) 124 (2021-02-21 22:34) def calc(num1, op, num2): r = math.pi if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = list(map(lambda num: int(num), nums.split())) cases = generate_all_combinations(num_list, '+-*/') ans = "No Solutions" for i in cases: if calc(calc(calc(i[0], i[1], i[2]), i[3], i[4]), i[5], i[6]) == 24: i = list(map(lambda x: str(x) if type(x) == type(1) else x, i)) ans = "( ( "+i[0]+" "+i[1]+" "+i[2]+" ) "+i[3]+" "+i[4]+ " ) "+i[5]+" "+i[6]+" = 24" break elif calc(calc(i[0], i[1], calc(i[2], i[3], i[4])), i[5], i[6]) == 24: i = list(map(lambda x: str(x) if type(x) == type(1) else x, i)) ans = "( "+i[0]+" "+i[1]+" ( "+i[2]+" "+i[3]+" "+i[4]+" ) ) "+i[5]+" "+i[6]+" = 24" break elif calc(calc(i[0], i[1], i[2]), i[3], calc(i[4], i[5], i[6])) == 24: i = list(map(lambda x: str(x) if type(x) == type(1) else x, i)) ans = "( "+i[0]+" "+i[1]+" "+i[2]+" ) "+i[3]+" ( "+i[4]+" "+i[5]+" "+i[6]+" ) = 24" break elif calc(i[0], i[1], calc(calc(i[2], i[3], i[4]), i[5], i[6])) == 24: i = list(map(lambda x: str(x) if type(x) == type(1) else x, i)) ans = i[0]+" "+i[1]+" ( ( "+i[2]+" "+i[3]+" "+i[4]+" ) "+i[5]+" "+i[6]+" ) = 24" break elif calc(i[0], i[1], calc(i[2], i[3],calc(i[4], i[5], i[6]))) == 24: i = list(map(lambda x: str(x) if type(x) == type(1) else x, i)) ans = i[0]+" "+i[1]+" ( "+i[2]+" "+i[3]+" ( "+i[4]+" "+i[5]+" "+i[6]+" ) ) = 24" break print(ans)
# 6330273421 (20) 125 (2021-02-20 14:35) def calc(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if float(num2)!=0: r = float(num1) / float(num2) else: r=1000000000000000000000 return r #--------------------------------------------------------- n=[str(e) for e in input('Enter 4 integers: ').split()] cb=generate_all_combinations(n, '+-*/') for i in range(len(cb)): x=cb[i] x1=' '.join(['(','(',x[0],x[1],x[2],')',x[3],x[4],')',x[5],x[6]]) x2=' '.join(['(',x[0],x[1],'(',x[2],x[3],x[4],')',')',x[5],x[6]]) x3=' '.join(['(',x[0],x[1],x[2],')',x[3],'(',x[4],x[5],x[6],')']) x4=' '.join([x[0],x[1],'(','(',x[2],x[3],x[4],')',x[5],x[6],')']) x5=' '.join([x[0],x[1],'(',x[2],x[3],'(',x[4],x[5],x[6],')',')']) rx1=calc(calc(calc(x[0],x[1],x[2]),x[3],x[4]),x[5],x[6]) rx2=calc(calc(x[0],x[1],calc(x[2],x[3],x[4])),x[5],x[6]) rx3=calc(calc(x[0],x[1],x[2]),x[3],calc(x[4],x[5],x[6])) rx4=calc(x[0],x[1],calc(calc(x[2],x[3],x[4]),x[5],x[6])) rx5=calc(x[0],x[1],calc(x[2],x[3],calc(x[4],x[5],x[6]))) if rx1==24: y1=str(x1)+' '+'='+' '+'24' print(y1) break elif rx2==24: y2=str(x2)+' '+'='+' '+'24' print(y2) break elif rx3==24: y3=str(x3)+' '+'='+' '+'24' print(y3) break elif rx4==24: y4=str(x4)+' '+'='+' '+'24' print(y4) break elif rx5==24: y5=str(x5)+' '+'='+' '+'24' print(y5) break elif i==(len(cb)-1): print('No Solutions')
# 6330274021 (20) 126 (2021-02-20 20:07) def calc(num1, op, num2): r = 0 num1 = float(num1) num2 = float(num2) if op == "+": r = num1 + num2 elif op == "-": r = num1 - num2 elif op == "*": r = num1 * num2 elif op == "/" and num2 != 0: r = num1 / num2 else: pass return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)): c = "" if calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) == 24: c += "( "+"( "+cases[i][0]+" "+cases[i][1]+" "+cases[i][2]+" ) "+cases[i][3]+" "+cases[i][4]+" ) "+cases[i][5]+" "+cases[i][6]+" ="+" 24" break elif calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) == 24: c += "( "+cases[i][0]+" "+cases[i][1]+" ( "+cases[i][2]+" "+cases[i][3]+" "+cases[i][4]+" )"+" ) "+cases[i][5]+" "+cases[i][6]+" ="+" 24" break elif calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) == 24: c += "( "+cases[i][0]+" "+cases[i][1]+" "+cases[i][2]+" ) "+cases[i][3]+" ( "+cases[i][4]+" "+cases[i][5]+" "+cases[i][6]+" ) "+"="+" 24" break elif calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) == 24: c += cases[i][0]+" "+cases[i][1]+" ( "+"( "+cases[i][2]+" "+cases[i][3]+" "+cases[i][4]+" ) "+cases[i][5]+" "+cases[i][6]+" ) "+"="+" 24" break elif calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) == 24: c += cases[i][0]+" "+cases[i][1]+" ( "+cases[i][2]+" "+cases[i][3]+" ( "+cases[i][4]+" "+cases[i][5]+" "+cases[i][6]+" )"+" ) "+"="+" 24" break if c == "": print("No Solutions") else : print(c)
# 6330275721 (19.82) 127 (2021-02-22 10:07) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': try: r = num1 / num2 except ZeroDivisionError: r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) for s in cases: solve1 = calc(calc(calc(int(s[0]), s[1], int(s[2])), s[3], int(s[4])), s[5], int(s[6])) solve2 = calc(calc(int(s[0]), s[1], calc(int(s[2]), s[3], int(s[4]))), s[5], int(s[6])) solve3 = calc(calc(int(s[0]), s[1], int(s[2])), s[3], calc(int(s[4]), s[5], int(s[6]))) solve4 = calc(int(s[0]), s[1], calc(calc(int(s[2]), s[3], int(s[4])), s[5], int(s[6]))) solve5 = calc(int(s[0]), s[1], calc(int(s[2]), s[3], calc(int(s[4]), s[5], int(s[6])))) if solve1 == 24: print('( (', s[0], s[1], s[2], ')', s[3], s[4], ')', s[5], s[6], '= 24') break elif solve2 == 24: print('(', s[0], s[1], '(', s[2], s[3], s[4], ') )', s[5], s[6], '= 24') break elif solve3 == 24: print('(', s[0], s[1], s[2], ')', s[3], '(', s[4], s[5], s[6], ') = 24') break elif solve4 == 24: print(s[0], s[1], '( (', s[2], s[3], s[4], ')', s[5], s[6], ') = 24') break elif solve5 == 24: print(s[0], s[1], '(', s[2], s[3], '(', s[4], s[5], s[6], ') ) = 24') break if solve1 != 24 and solve2 != 24 and solve3 != 24 and solve4 != 24 and solve5 != 24: print('No Solution')
# 6330276321 (20) 128 (2021-02-20 03:09) def calc(num1, op, num2) : if op == "+" : r = float(num1) + float(num2) elif op == "-" : r = float(num1) - float(num2) elif op == "*" : r = float(num1) * float(num2) elif op == "/" : try : r = float(num1) / float(num2) except ZeroDivisionError : r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list_orig = nums.split() num_list_int = [int(e) for e in nums.split()] total_cases = [] cases = generate_all_combinations( num_list_orig, '+-*/' ) #print(len(cases), cases) for x in cases : c1 = "( " + "( " + str(x[0]) + " " + x[1] + " " + str(x[2]) + " ) " + x[3] + " " + str(x[4]) + " ) " + x[5] + " " + str(x[6]) total_cases.append(c1) c2 = "( " + str(x[0]) + " " + x[1] + " ( " + str(x[2]) + " " + x[3] + " " + str(x[4]) + " )" + " ) " + x[5] + " " + str(x[6]) total_cases.append(c2) c3 = "( " + str(x[0]) + " " + x[1] + " " + str(x[2]) + " ) " + x[3] + " ( " + str(x[4]) + " " + x[5] + " " + str(x[6]) + " )" total_cases.append(c3) c4 = str(x[0]) + " " + x[1] + " ( " + "( " + str(x[2]) + " " + x[3] + " " + str(x[4]) + " ) " + x[5] + " " + str(x[6]) + " )" total_cases.append(c4) c5 = str(x[0]) + " " + x[1] + " ( " + str(x[2]) + " " + x[3] + " ( " + str(x[4]) + " " + x[5] + " " + str(x[6]) + " )" + " )" total_cases.append(c5) b_cases = [] for j in range(len(cases)) : b_cases.append(cases[j]) b_cases.append(cases[j]) b_cases.append(cases[j]) b_cases.append(cases[j]) b_cases.append(cases[j]) #print("b_cases has len =", len(b_cases)) #print(b_cases) total_rs = [] for i in range(len(total_cases)) : if i % 5 == 0 : r1 = calc(b_cases[i][0], b_cases[i][1], b_cases[i][2]) r2 = calc(r1, b_cases[i][3], b_cases[i][4]) r = calc(r2, b_cases[i][5], b_cases[i][6]) total_rs.append(r) elif i % 5 == 1 : r1 = calc(b_cases[i][2], b_cases[i][3], b_cases[i][4]) r2 = calc(b_cases[i][0], b_cases[i][1], r1) r = calc(r2, b_cases[i][5], b_cases[i][6]) total_rs.append(r) elif i % 5 == 2 : r1 = calc(b_cases[i][0], b_cases[i][1], b_cases[i][2]) r2 = calc(b_cases[i][4], b_cases[i][5], b_cases[i][6]) r = calc(r1, b_cases[i][3], r2) total_rs.append(r) elif i % 5 == 3 : r1 = calc(b_cases[i][2], b_cases[i][3], b_cases[i][4]) r2 = calc(r1, b_cases[i][5], b_cases[i][6]) r = calc(b_cases[i][0], b_cases[i][1], r2) total_rs.append(r) elif i % 5 == 4 : r1 = calc(b_cases[i][4], b_cases[i][5], b_cases[i][6]) r2 = calc(b_cases[i][2], b_cases[i][3], r1) r = calc(b_cases[i][0], b_cases[i][1], r2) total_rs.append(r) legit = False for k in range(len(total_rs)) : if total_rs[k] == 24 : print(total_cases[k], "= 24") legit = True break if legit == False : print("No Solutions") #print(len(total_cases), total_cases) #print(len(total_rs), total_rs)
# 6330277021 (20) 129 (2021-02-20 17:42) def calc(num1, op, num2): if num1 == 'error' or num2 == 'error': r = 'error' elif op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0: r = num1 / num2 elif op == '/' and num2 == 0: r = 'error' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') #... nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) last1 = 'No Solutions' last2 = 'No Solutions' for i in range(len(cases)): x = cases[i] c1 = calc(int(x[0]), x[1], int(x[2])) c1 = calc(c1, x[3], int(x[4])) c1 = calc(c1, x[5], int(x[6])) if c1 == 24: last1 = x last2 = 'c1' break c2 = calc(int(x[2]), x[3], int(x[4])) c2 = calc(int(x[0]), x[1], c2) c2 = calc(c2, x[5], int(x[6])) if c2 == 24: last1 = x last2 = 'c2' break c3 = calc(int(x[0]), x[1], int(x[2])) c3_1 = calc(int(x[4]), x[5], int(x[6])) c3 = calc(c3, x[3], c3_1) if c3 == 24: last1 = x last2 = 'c3' break c4 = calc(int(x[2]), x[3], int(x[4])) c4 = calc(c4, x[5], int(x[6])) c4 = calc(int(x[0]), x[1], c4) if c4 == 24: last1 = x last2 = 'c4' break c5 = calc(int(x[4]), x[5], int(x[6])) c5 = calc(int(x[2]), x[3], c5) c5 = calc(int(x[0]), x[1], c5) if c5 == 24: last1 = x last2 = 'c5' break if last1 == 'No Solutions' or last2 == 'No Solutions': print('No Solutions') else : if last2 == 'c1': print('(', '(', last1[0], last1[1], last1[2], ')', last1[3], last1[4], ')', last1[5], last1[6], '=', 24) if last2 == 'c2': print('(', last1[0], last1[1], '(', last1[2], last1[3], last1[4], ')', ')', last1[5], last1[6], '=', 24) if last2 == 'c3': print('(', last1[0], last1[1], last1[2], ')', last1[3], '(', last1[4], last1[5], last1[6], ')', '=', 24) if last2 == 'c4': print(last1[0], last1[1], '(', '(', last1[2], last1[3], last1[4], ')', last1[5], last1[6], ')', '=', 24) if last2 == 'c5': print(last1[0], last1[1], '(', last1[2], last1[3], '(', last1[4], last1[5], last1[6], ')', ')', '=', 24)
# 6330278621 (19.82) 130 (2021-02-21 23:51) def calc(num1, operators, num2): if operators == '+': a = num1 + num2 elif operators == '-': a = num1 - num2 elif operators == '*': a = num1 * num2 elif operators == '/': try: a = num1 / num2 except ZeroDivisionError: a = math.inf return a def calc(num1, operators, num2): if operators == '+': b = num1 + num2 elif operators == '-': b = num1 - num2 elif operators == '*': b = num1 * num2 elif operators == '/': try: b = num1 / num2 except ZeroDivisionError: b = math.inf return b def calc(num1, operators, num2): if operators == '+': c = num1 + num2 elif operators == '-': c = num1 - num2 elif operators == '*': c = num1 * num2 elif operators == '/': try: c = num1 / num2 except ZeroDivisionError: c = math.inf return c def calc(num1, operators, num2): if operators == '+': d = num1 + num2 elif operators == '-': d = num1 - num2 elif operators == '*': d = num1 * num2 elif operators == '/': try: d = num1 / num2 except ZeroDivisionError: d = math.inf return d def calc(num1, operators, num2): if operators == '+': e = num1 + num2 elif operators == '-': e = num1 - num2 elif operators == '*': e = num1 * num2 elif operators == '/': try: e = num1 / num2 except ZeroDivisionError: e = math.inf return e #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split(" ") cases = generate_all_combinations( nums, '+-*/' ) for i in cases: A = i a = calc(int(A[0]),A[1],int(A[2])) a = calc(a,A[3],int(A[4])) a = calc(a,A[5],int(A[6])) way1 = a b = calc(int(A[2]),A[3],int(A[4])) b = calc(int(A[0]),A[1],b) b = calc(b,A[5],int(A[6])) way2 = b c0 = calc(int(A[0]),A[1],int(A[2])) c1 = calc(int(A[4]),A[5],int(A[6])) c = calc(c0,A[3],c1) way3 = c d = calc(int(A[2]),A[3],int(A[4])) d = calc(d,A[5],int(A[6])) d = calc(int(A[0]),A[1],d) way4 = d e = calc(int(A[4]),A[5],int(A[6])) e = calc(int(A[2]),A[3],e) e = calc(int(A[0]),A[1],e) way5 = e if way1 == 24: print("(", "(", str(A[0]), A[1], str(A[2]), ")", A[3], str(A[4]), ")",\ A[5], str(A[6]) ,"=","24") break elif way2 == 24: print("(", str(A[0]), A[1], "(", str(A[2]), A[3], str(A[4]), ")"\ ,")" ,A[5] ,str(A[6]),"=","24") break elif way3 == 24: print("(", str(A[0]), A[1], str(A[2]), ")", A[3],"("\ , str(A[4]),A[5], str(A[6]), ")","=","24") break elif way4 == 24: print(str(A[0]), A[1] ,"(", "(" ,str(A[2]), A[3]\ , str(A[4]), ")" ,A[5], str(A[6]), ")","=","24") break elif way5 == 24: print(str(A[0]), A[1] ,"(", str(A[2]), A[3],\ "(" ,str(A[4]), A[5], str(A[6]), ")" ,")","=","24") break if way1!=24 and way2!=24 and way3!=24 and way4!=24 and way5!=24: print("No Solution")
# 6330279221 (20) 131 (2021-02-19 22:20) def calc(num1, op, num2): if op == '+': r = num1 + num2 return r elif op == '-': r = num1 - num2 return r elif op == '*': r = num1 * num2 return r elif op == '/': if num2 == 0: return float('NaN') else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.split()] cases = generate_all_combinations( num_list, '+-*/' ) i = 0 out = 0 while i < len(cases): x = cases[i] s1 = calc(calc(calc(x[0],x[1],x[2]),x[3],x[4]),x[5],x[6]) s2 = calc(calc(x[0],x[1],calc(x[2],x[3],x[4])),x[5],x[6]) s3 = calc(calc(x[0],x[1],x[2]),x[3],calc(x[4],x[5],x[6])) s4 = calc(x[0],x[1],calc(calc(x[2],x[3],x[4]),x[5],x[6])) s5 = calc(x[0],x[1],calc(x[2],x[3],calc(x[4],x[5],x[6]))) if s1 == 24: print('( (',x[0],x[1],x[2],')',x[3],x[4],')',x[5],x[6],'= 24') out += 1 break elif s2 == 24: print('(',x[0],x[1],'(',x[2],x[3],x[4],') )',x[5],x[6],'= 24') out += 1 break elif s3 == 24: print('(',x[0],x[1],x[2],')',x[3],'(',x[4],x[5],x[6],')','= 24') out += 1 break elif s4 == 24: print(x[0],x[1],'( (',x[2],x[3],x[4],')',x[5],x[6],')','= 24') out += 1 break elif s5 == 24: print(x[0],x[1],'(',x[2],x[3],'(',x[4],x[5],x[6],') )','= 24') out += 1 break i += 1 if out == 0: print('No Solutions')
# 6330280821 (16.4) 132 (2021-02-20 23:52) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*' : r = num1 * num2 elif op == "/" and num2 != 0 : r = num1 / num2 else : r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations( num_list, '+-*/' ) for i in range(len(cases)) : p = int(cases[i][0]) q = int(cases[i][2]) r = int(cases[i][4]) s = int(cases[i][6]) a = calc(calc(calc(p,cases[i][1],q),cases[i][3],r),cases[i][5],s) b = calc(calc(p,cases[i][1],calc(q,cases[i][3],r)),cases[i][5],s) c = calc(calc(p,cases[i][1],q),cases[i][3],calc(r,cases[i][5],s)) d = calc(p,cases[i][1],calc(calc(q,cases[i][3],r),cases[i][5],s)) e = calc(p,cases[i][1],calc(q,cases[i][3],calc(r,cases[i][5],s))) t = 1 if a == 24 : print("(","(",p,cases[i][1],q,")",cases[i][3],r,")",cases[i][5],s) t = 0 break elif b == 24 : print("(",p,cases[i][1],"(",q,cases[i][3],r,")",")",cases[i][5],s) t = 0 break elif c == 24 : print("(",p,cases[i][1],q,")",cases[i][3],"(",r,cases[i][5],s,")") t = 0 break elif d == 24 : print(p,cases[i][1],"(","(",q,cases[i][3],r,")",cases[i][5],s,")") t = 0 break elif e == 24 : print(p,cases[i][1],"(",q,cases[i][3],"(",r,cases[i][5],s,")",")") t = 0 break else : pass if t == 1 : print("No Solutions")
# 6330281421 (20) 133 (2021-02-20 10:30) def cal(num1,op,num2): if 'Error' in str(num1)+str(num2): r='Error' else: if op=='+': r =num1+num2 elif op=='-': r =num1-num2 elif op=='*': r =num1*num2 else: if num2!=0: r =num1/num2 else: r ='Error' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() for i in range(len(nums)): nums[i]=int(nums[i]) cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)): case=cases[i] #print(cases[i]) for i in range(1,6): if i==1: sum=cal(cal(cal(case[0],case[1],case[2]),case[3],case[4]),case[5],case[6]) elif i==2: sum=cal(cal(case[0],case[1],cal(case[2],case[3],case[4])),case[5],case[6]) elif i==3: sum=cal(cal(case[0],case[1],case[2]),case[3],cal(case[4],case[5],case[6])) elif i==4: sum=cal(case[0],case[1],cal(cal(case[2],case[3],case[4]),case[5],case[6])) else: sum=cal(case[0],case[1],cal(case[2],case[3],cal(case[4],case[5],case[6]))) #print(sum) if sum==24: if i==1: print('( (',case[0],case[1],case[2],')',case[3],case[4],')',case[5],case[6],'=',int(sum) ) elif i==2: print('(',case[0],case[1],'(',case[2],case[3],case[4],') )',case[5],case[6],'=',int(sum) ) elif i==3: print('(',case[0],case[1],case[2],')',case[3],'(',case[4],case[5],case[6],') =',int(sum)) elif i==4: print( case[0],case[1],'( (',case[2],case[3],case[4],')',case[5],case[6],') =',int(sum) ) else: print( case[0],case[1],'(',case[2],case[3],'(',case[4],case[5],case[6],') ) =',int(sum) ) break if sum==24:break if sum!=24: print('No Solutions')
# 6330282021 (20) 134 (2021-02-18 19:20) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0: r = num1 / num2 else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_list = [int(e) for e in nums.split(' ')] operator = '+-*/' cases = generate_all_combinations(nums_list,operator) for k in cases: f1 = calc(calc(calc(k[0],k[1],k[2]),k[3],k[4]), k[5], k[6]) f2 = calc(calc(k[0],k[1],calc(k[2],k[3],k[4])), k[5], k[6]) f3 = calc(calc(k[0],k[1],k[2]), k[3], calc(k[4],k[5],k[6])) f4 = calc(k[0], k[1], calc(calc(k[2],k[3],k[4]),k[5],k[6])) f5 = calc(k[0], k[1], calc(k[2],k[3],calc(k[4],k[5],k[6]))) if f1 == 24: s1 = '( ( ' + str(k[0]) + ' ' + k[1] + ' ' + str(k[2]) + ' ) ' + k[3] + ' ' + str(k[4]) + ' ) ' + k[5] + ' ' + str(k[6]) print(s1,'= 24') break elif f2 == 24: s2 = '( ' + str(k[0]) + ' ' + k[1] + ' ( ' + str(k[2]) + ' ' + k[3] + ' ' + str(k[4]) + ' ) ) ' + k[5] + ' ' + str(k[6]) print(s2, '= 24') break elif f3 == 24: s3 = '( ' + str(k[0]) + ' ' + k[1] + ' ' + str(k[2]) + ' ) ' + k[3] + ' ( ' + str(k[4]) + ' ' + k[5] + ' ' + str(k[6]) + ' )' print(s3, '= 24') break elif f4 == 24: s4 = str(k[0]) + ' ' + k[1] + ' ( ( ' + str(k[2]) + ' ' + k[3] + ' ' + str(k[4]) + ' ) ' + k[5] + ' ' + str(k[6]) + ' )' print(s4, '= 24') break elif f5 == 24: s5 = str(k[0]) + ' ' + k[1] + ' ( ' + str(k[2]) + ' ' + k[3] + ' ( ' + str(k[4]) + ' ' + k[5] + ' ' + str(k[6]) + ' ) )' print(s5, '= 24') break if f1 != 24 and f2 != 24 and f3 != 24 and f4 != 24 and f5!= 24: print('No Solutions')
# 6330283721 (20) 135 (2021-02-18 10:13) def calc(num1,op,num2): if op== '+': r= num1+num2 elif op== "-": r= num1-num2 elif op== '*': r= num1*num2 elif op== '/': r= num1/num2 if num2 !=0 else 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') s=nums.split() cases = generate_all_combinations( s, '+-*/' ) for i in range(len(cases)): a = cases[i] an = a[::2] ao = a[1::2] m=0 if calc(calc(calc(int(an[0]),ao[0],int(an[1])),ao[1],int(an[2])),ao[2],int(an[3]))== 24: m+=1 print("(","(",an[0],ao[0],an[1],")",ao[1],an[2],")",ao[2],an[3],"=","24") break if calc(calc(int(an[0]),ao[0],calc(int(an[1]),ao[1],int(an[2]))),ao[2],int(an[3]))== 24: m+=1 print("(",an[0],ao[0],"(",an[1],ao[1],an[2],")",")",ao[2],an[3],"=","24") break if calc(calc(int(an[0]),ao[0],int(an[1])),ao[1],calc(int(an[2]),ao[2],int(an[3])))== 24: m+=1 print("(",an[0],ao[0],an[1],")",ao[1],"(",an[2],ao[2],an[3],")","=","24") break if calc(int(an[0]),ao[0],calc(calc(int(an[1]),ao[1],int(an[2])),ao[2],int(an[3])))== 24: m+=1 print(an[0],ao[0],"(","(",an[1],ao[1],an[2],")",ao[2],an[3],")","=","24") break if calc(int(an[0]),ao[0],calc(int(an[1]),ao[1],calc(int(an[2]),ao[2],int(an[3]))))== 24: m+=1 print(an[0],ao[0],"(",an[1],ao[1],"(",an[2],ao[2],an[3],")",")","=","24") break if m==0: print("No Solutions")
# 6330284321 (20) 136 (2021-02-22 12:39) def calc(num1, op, num2): if num1 == 'hello' or num2 == 'hello': return 'hello' if op == '+': return num1 + num2 if op == '-': return num1 - num2 if op == '*': return num1 * num2 if op == '/': if num2 == 0: return 'hello' else: return num1 / num2 #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = map(int, nums.split(" ")) cases = generate_all_combinations( nums, '+-*/' ) status = False; for arr in cases: if calc(calc(calc(arr[0], arr[1], arr[2]), arr[3], arr[4]), arr[5], arr[6]) == 24: print("( (", arr[0], arr[1], arr[2], ")", arr[3], arr[4], ")", arr[5], arr[6], "= 24") status = True elif calc(calc(arr[0], arr[1], calc(arr[2], arr[3], arr[4])), arr[5], arr[6]) == 24: print("(", arr[0], arr[1], "(", arr[2], arr[3], arr[4], ") )", arr[5], arr[6], "= 24") status = True elif calc(calc(arr[0], arr[1], arr[2]), arr[3], calc(arr[4], arr[5], arr[6])) == 24: print("(", arr[0], arr[1], arr[2], ")", arr[3], "(", arr[4], arr[5], arr[6], ")", "= 24") status = True elif calc(arr[0], arr[1], calc(calc(arr[2], arr[3], arr[4]), arr[5], arr[6])) == 24: print(arr[0], arr[1], "( (", arr[2], arr[3], arr[4], ")", arr[5], arr[6], ")", "= 24") status = True elif calc(arr[0], arr[1], calc(arr[2], arr[3], calc(arr[4], arr[5], arr[6]))) == 24: print(arr[0], arr[1], "(", arr[2], arr[3], "(", arr[4], arr[5], arr[6], ") )", "= 24") status = True if status: break if status == False: print("No Solutions")
# 6330285021 (4.14) 137 (2021-02-21 16:05) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op =='*': r = num1*num2 elif op == '/' and num2 != 0: r = num1/num2 else: r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations(nums,'+-*/') t = True for i in range(len(cases)): x1 = int(cases[i][0]) x2 = int(cases[i][2]) x3 = int(cases[i][4]) x4 = int(cases[i][6]) y1 = calc(calc(calc(x1,cases[i][1],x2),cases[i][3],x3),cases[i][5],x4) y2 = calc(calc(x1,cases[i][1],calc(x2,cases[i][3],x3)),cases[i][5],x4) y3 = calc(calc(x1,cases[i][1],x2),cases[i][3],calc(x3,cases[i][5],x4)) y4 = calc(x1,cases[i][1],calc(calc(x2,cases[i][3],x3),cases[i][5],x4)) y5 = calc(x1,cases[i][1],calc(x2,cases[i][3],calc(x3,cases[i][5],x4))) if y1 == 24: print('( '+'( '+str(x1)+' + '+str(x2)+' )'+' + '+str(x3)+' )'+' + '+str(x4)+' = '+'24') t = False break elif y2 == 24: print('( '+str(x1)+' + '+'( '+str(x2)+' + '+str(x3)+' )'+' )'+' + '+str(x4)+' = '+'24') t = False break elif y3 == 24: print('( '+str(x1)+' + '+str(x2)+' )'+' + '+'( '+str(x3)+' + '+str(x4)+' )'+' = '+'24') t = False break elif y4 == 24: print(str(x1)+' + '+'( '+'( '+str(x2)+' + '+str(x3)+' )'+' + '+str(x4)+' )'+' = '+'24') t = False break elif y5 == 24: print(str(x1)+' + '+'( '+str(x2)+' + '+'( '+str(x3)+' + '+str(x4)+' )'+' )'+' = '+'24') t = False break if t == True: print('No Solutions')
# 6330286621 (20) 138 (2021-02-20 02:54) def calc(num1,op,num2): if op == "+":r=num1+num2 elif op == "-":r=num1-num2 elif op == "*":r=num1*num2 elif op == "/"and num2==0 :r=num1*math.inf elif op == "/":r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split(" ") for i in range(len(nums)):nums[i]=int(nums[i]) cases = generate_all_combinations( nums, '+-*/' ) k=0 for i in cases: if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6])==24: print("(","(",i[0],i[1],i[2],")",i[3],i[4],")",i[5],i[6],"=",24);k=1;break elif calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6])==24: print("(",i[0],i[1],"(",i[2],i[3],i[4],")",")",i[5],i[6],"=",24);k=1;break elif calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6]))==24: print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')',"=",24);k=1;break elif calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6]))==24: print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')',"=",24);k=1;break elif calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6])))==24: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')',"=",24);k=1;break if k==0: print("No Solutions")
# 6330288921 (18) 139 (2021-02-21 17:37) def calc(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/' : if float(num2) !=0 : r = float(num1) / float(num2) else: r = 1000000 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split(' ') cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)): w,r,u,p= cases[i][0], cases[i][2], cases[i][4], cases[i][6] a,b,c = cases[i][1], cases[i][3], cases[i][5] if calc(calc(calc(w,a,r),b,u),c,p) == 24: print('(','(',w,a,r,')',b,u,')',c,p,'=','24') break elif calc(calc(w,a,calc(r,b,u)),c,p) == 24: print('(',str(w),str(a),'(',str(r),str(b),str(u),')',')',str(c),str(p),'=','24') break elif calc(calc(w,a,r),b,calc(u,c,p)) == 24: print('(',str(w),str(a),str(r),')',str(b),'(',str(u),str(c),str(p),')','=','24') break elif calc(w,a,calc(calc(r,b,u),c,p)) ==24: print(str(w),str(a),'(','(',str(r),str(b),str(u),')',str(c),str(p),')','=','24') break elif calc(w,a,calc(r,b,calc(u,c,p))) == 24: print(str(w),str(a),'(',str(r),str(b),'(',str(r),str(b),'(',str(u),str(c),str(p),')',')','=','24') break else: print('No Solutions')
# 6330289521 (20) 140 (2021-02-22 21:31) #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() for i in range (4): nums[i]=int(nums[i]) cases = generate_all_combinations( nums, '+-*/' ) ... for x in cases: im=True n=0 if x[1]=="+": n=x[0]+x[2] elif x[1]=="-": n=x[0]-x[2] elif x[1]=="*": n=x[0]*x[2] else: if x[2]==0: im=False else: n=x[0]/x[2] ######### if x[3]=="+": n=n+x[4] elif x[3]=="*": n=n*x[4] elif x[3]=="/": if x[4]!=0: n=n/x[4] else: im=False elif x[3]=="-": n=n-x[4] ###### if x[5]=="+": n=n+x[6] elif x[5]=="*": n=n*x[6] elif x[5]=="/": if x[6]!=0: n=n/x[6] else: im=False else: n=n-x[6] if n==float(24) and im: print("( (",str(x[0]),str(x[1]),str(x[2]),")",str(x[3]),str(x[4]),")",str(x[5]),str(x[6]),"=","24") break n=0 im=True #[1,"+",2,"+",3,"+",4] if x[3]=="+": n=x[2]+x[4] elif x[3]=="-": n=x[2]-x[4] elif x[3]=="*": n=x[2]*x[4] else: if x[4]!=0: n=x[2]/x[4] else: im=False ######### if x[1]=="+": n=x[0]+n elif x[1]=="*": n=x[0]*n elif x[1]=="/": if n!=0: n=x[0]/n else: im=False else: n=x[0]-n ###### if x[5]=="+": n=n+x[6] elif x[5]=="*": n=n*x[6] elif x[5]=="/": if x[6]!=0: n=n/x[6] else: im=False else: n=n-x[6] if n==float(24) and im: print("(",str(x[0]),str(x[1]),"(",str(x[2]),str(x[3]),str(x[4]),") )",str(x[5]),str(x[6]),"=","24") break n=0 im=True ################################ if x[1]=="+": n1=x[0]+x[2] elif x[1]=="-": n1=x[0]-x[2] elif x[1]=="*": n1=x[0]*x[2] else: if x[2]!=0: n1=x[0]/x[2] else: im=False ##### if x[5]=="+": n2=x[4]+x[6] elif x[5]=="-": n2=x[4]-x[6] elif x[5]=="*": n2=x[4]*x[6] else: if x[6]!=0: n2=x[4]/x[6] else: im=False if x[3]=="+": n=n1+n2 elif x[3]=="-": n=n1-n2 elif x[3]=="*": n=n1*n2 elif x[3]=="/": if n2 != 0: n=n1/n2 else: n=0 im=False if n==float(24) and im: print("(",str(x[0]),str(x[1]),str(x[2]),")",str(x[3]),'(',str(x[4]),str(x[5]),str(x[6]),')',"=","24") break n=0 im=True ############################## #[1,"+",2,"+",3,"+",4] if x[3]=="+": n=x[2]+x[4] elif x[3]=="-": n=x[2]-x[4] elif x[3]=="*": n=x[2]*x[4] else: if x[4]!=0: n=x[2]/x[4] else: im=False ######### if x[5]=="+": n=n+x[6] elif x[5]=="*": n=n*x[6] elif x[5]=="/": if x[6]!=0: n=n/x[6] else: im=False else: n=n-x[6] ###### if x[1]=="+": n=x[0]+n elif x[1]=="*": n=x[0]*n elif x[1]=="/": if n!=0: n=x[0]/n else: im=False else: n=x[0]-n if n==float(24) and im: print(str(x[0]),str(x[1]),"( (",str(x[2]),str(x[3]),str(x[4]),")",str(x[5]),str(x[6]),")","=","24") break n=0 im=True #[1,"+",2,"+",3,"+",4] if x[5]=="+": n=x[4]+x[6] elif x[5]=="-": n=x[4]-x[6] elif x[5]=="*": n=x[4]*x[6] else: if x[6]!=0: n=x[4]/x[6] else: im=False ######### if x[3]=="+": n=x[2]+n elif x[3]=="*": n=x[2]*n elif x[3]=="/": if n==0: im=False n=0 else: n=x[2]/n elif x[3]=="-": n=x[2]-n ###### if x[1]=="+": n=x[0]+n elif x[1]=="*": n=x[0]*n elif x[1]=="/": if n!=0: n=x[0]/n else: n=0 im=False elif x[1]=="-": n=x[0]-n if n==float(24) and im: print(str(x[0]),str(x[1]),"(",str(x[2]),str(x[3]),"(",str(x[4]),str(x[5]),str(x[6]),") )","=","24") break if n!=float(24): print("No Solutions")
# 6330290021 (20) 141 (2021-02-21 11:40) def calc(num1,op1,num2): if op1 == '+': r = num1 + num2 elif op1 == '*': r = num1 * num2 elif op1 == '/': if num2 != 0 : r = num1 / num2 elif num2 == 0: r = math.inf elif op1 == '-': r = num1 - num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a,b,c,d = nums.split() cases = generate_all_combinations((a,b,c,d), '+-*/' ) s = 0 while s != 24 : for i in cases: #case1 ((1+2)+3)+4 num1,op1,num2 = float(i[0]),i[1],float(i[2]) s = calc(num1,op1,num2) num1,op1,num2 = s,i[3],float(i[4]) s = calc(num1,op1,num2) num1,op1,num2 = s,i[5],float(i[6]) s = calc(num1,op1,num2) if s == 24 : print('( (',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=','24') break elif s != 24.0 : s = 0 #case2 (1+(2+3))+4 num1,op1,num2 = float(i[2]),i[3],float(i[4]) s = calc(num1,op1,num2) num1,op1,num2 = float(i[0]),i[1],s s = calc(num1,op1,num2) num1,op1,num2 = s,i[5],float(i[6]) s = calc(num1,op1,num2) if s == 24 : print('(',i[0],i[1],'(',i[2],i[3],i[4],') )',i[5],i[6],'=','24') break elif s != 24.0 : s = 0 #case3 (1+2)+(3+4) num1,op1,num2 = float(i[0]),i[1],float(i[2]) s1 = calc(num1,op1,num2) num1,op1,num2 = float(i[4]),i[5],float(i[6]) s2 = calc(num1,op1,num2) num1,op1,num2 = s1,i[3],s2 s = calc(num1,op1,num2) if s == 24 : print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=','24') break elif s != 24.0 : s = 0 #case4 1+((2+3)+4) num1,op1,num2 = float(i[2]),i[3],float(i[4]) s = calc(num1,op1,num2) num1,op1,num2 = s,i[5],float(i[6]) s = calc(num1,op1,num2) num1,op1,num2 = float(i[0]),i[1],s s = calc(num1,op1,num2) if s == 24 : print(i[0],i[1],'( (',i[2],i[3],i[4],')',i[5],i[6],')','=','24') break elif s != 24.0 : s = 0 #cases5 1+(2+(3+4)) num1,op1,num2 = float(i[4]),i[5],float(i[6]) s = calc(num1,op1,num2) num1,op1,num2 = float(i[2]),i[3],s s = calc(num1,op1,num2) num1,op1,num2 = float(i[0]),i[1],s s = calc(num1,op1,num2) if s == 24 : print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],') )','=','24') break if s != 24: print('No Solutions') break
# 6330291721 (20) 142 (2021-02-20 12:15) def safe_div(x,y): if y == 0: return math.inf return x / y def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': r = safe_div(num1,num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() list_nums = [int(nums[0]),int(nums[1]),int(nums[2]),int(nums[3])] cases = generate_all_combinations( list_nums, '+-*/' ) for n in cases: if calc(calc(calc(n[0],n[1],n[2]),n[3],n[4]),n[5],n[6]) == 24: print("( (",n[0],n[1],n[2],")",n[3],n[4],")",n[5],n[6],"= 24") break if calc(calc(n[0],n[1],calc(n[2],n[3],n[4])),n[5],n[6]) == 24: print("(",n[0],n[1],"(",n[2],n[3],n[4],") )",n[5],n[6],"= 24") break if calc(calc(n[0],n[1],n[2]),n[3],calc(n[4],n[5],n[6])) == 24: print("(",n[0],n[1],n[2],")",n[3],"(",n[4],n[5],n[6],")","= 24") break if calc(n[0],n[1],calc(calc(n[2],n[3],n[4]),n[5],n[6])) == 24: print(n[0],n[1],"( (",n[2],n[3],n[4],")",n[5],n[6],")","= 24") break if calc(n[0],n[1],calc(n[2],n[3],calc(n[4],n[5],n[6]))) == 24: print(n[0],n[1],"(",n[2],n[3],"(",n[4],n[5],n[6],") )","= 24") break else: print("No Solutions")
# 6330292321 (18) 143 (2021-02-22 01:27) def ops(a,p,b): a = float(a) b = float(b) try: if p == '+': return a+b elif p == '-': return a-b elif p == '/' and b != 0: return a/b elif p == '*': return a*b else: return except: return #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) m = 0 for i in range(len(cases)): a = cases[i][0] p = cases[i][1] b = cases[i][2] q = cases[i][3] c = cases[i][4] r = cases[i][5] d = cases[i][6] try : if ops(ops(ops(a,p,b),q,c),r,d) == 24: print('(','(',a,p,b,')',q,c,')',r,d,'=','24') m = 1 break if ops(ops(a,p,ops(b,q,c)),r,d) == 24: print('(',a,p,'(',b,q,c,')',')',r,d,'=','24',) m = 1 break if ops(ops(a,p,b),q,ops(c,r,d)) == 24: print('(',a,p,b,')',q,'(',c,r,d,')','=','24') m = 1 break if ops(a,p,ops(ops(b,q,c),r,d)) == 24: print('(',a,p,'(','(',b,q,c,')',r,d,')','=','24') m = 1 break if ops(a,p,ops(b,q,ops(c,r,d))) == 24: print(a,p,'(',b,q,'(',c,r,d,')',')','=','24') m = 1 break except: continue if m == 0: print('No Solutions')
# 6330293021 (10.16) 144 (2021-02-19 22:05) def calc(num1, operation, num2): A = True if num1 == 'Undefine' or num2 == 'Undefine' : r = 'Undefine' elif operation == '+': r = int(num1)+int(num2) elif operation == '-': r = int(num1)-int(num2) elif operation == '*': r = int(num1)*int(num2) elif operation == '/': if int(num2) == 0 : A = False else : r = int(num1)/int(num2) if A == False : r = 'Undefine' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split() cases = generate_all_combinations( a, '+-*/' ) k = 0 for c in cases : if calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) == 24 : print('(',c[0],c[1],'(',c[2],c[3],'(',c[4],c[5],c[6],')',')','=','24') break elif calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])) == 24 : print('(',c[0],c[1],c[2],')',c[3],'(',c[4],c[5],c[6],')','=','24') break elif calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) == 24 : print('(','(',c[0],c[1],c[2],')',c[3],c[4],')',c[5],c[6],'=','24') break elif calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) == 24 : print(c[0],c[1],'(','(',c[2],c[3],c[4],')',c[5],c[6],')','=','24') break elif calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) == 24 : print('(',c[0],c[1],'(',c[2],c[3],c[4],')',c[5],c[6],'=','24') break k += 1 if k == len(cases) : print('No Solutions')
# 6330294621 (19.6) 145 (2021-02-21 18:00) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = math.inf else: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int (e) for e in nums.split(' ')] cases = generate_all_combinations( num_list, '+-*/' ) i=0 while i < len(cases): ans = calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) if ans == 24: print('(','(',str(cases[i][0]),str(cases[i][1]),str(cases[i][2]),')',str(cases[i][3]),str(cases[i][4]),')',str(cases[i][5]),str(cases[i][6]),'= 24') break ans = calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) if ans == 24: print('(',str(cases[i][0]),str(cases[i][1]),'(',str(cases[i][2]),str(cases[i][3]),str(cases[i][4]),')',')',str(cases[i][5]),str(cases[i][6]),"= 24") break ans = calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) if ans == 24: print('(',str(cases[i][0]),str(cases[i][1]),str(cases[i][2]),')',str(cases[i][3]),'(',str(cases[i][4]),str(cases[i][5]),str(cases[i][6]),')',"= 24") break ans = calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) if ans == 24: print(str(cases[i][0]),str(cases[i][1]),'(','(',str(cases[i][2]),str(cases[i][3]),str(cases[i][4]),')',str(cases[i][5]),str(cases[i][6]),')','= 24' ) break ans = calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) if ans == 24: print(str(cases[i][0]),str(cases[i][1]),'('+str(cases[i][2]),str(cases[i][3]),'('+ str(cases[i][4]) , str(cases[i][5]),str(cases[i][6]),')',')','=','24') break i+=1 if i >= len(cases): print('No Solutions')
# 6330295221 (20) 146 (2021-02-22 11:39) def calc(num1, op, num2): if num1 != 'n' and num2 != "n": if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if float(num2) != 0: r = float(num1) / float(num2) else: r = "n" else: r = 'n' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = nums.split() dai = 0 cases = generate_all_combinations( n, '+-*/' ) for i in cases: if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24: print('('+" "+'('+" "+i[0]+" "+i[1]+" "+i[2]+" "+")"+" "+i[3]+" "+i[4]+" "+")"+" "+i[5]+" "+i[6]+" "+"= 24") dai += 1 break if calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) == 24: print('('+" "+i[0]+" "+i[1]+" "+i[2]+" "+")"+" "+i[3]+" "+'('+" "+i[4]+" "+i[5]+" "+i[6]+" "+')'+" = 24") dai += 1 break if calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) == 24: print("("+" "+i[0]+" "+i[1]+" "+"("+" "+i[2]+" "+i[3]+" "+i[4]+" "+")"+' '+')'+" "+i[5]+" "+i[6]+" = 24") dai += 1 break if calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) == 24: print(i[0]+" "+i[1]+' '+'('+' '+'('+' '+i[2]+' '+i[3]+' '+i[4]+' '+')'+' '+i[5]+' '+i[6]+' '+')'+' = 24') dai += 1 break if calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) == 24: print(i[0]+" "+i[1]+" "+'('+' '+i[2]+' '+i[3]+' '+'('+' '+i[4]+' '+i[5]+' '+i[6]+' ) ) = 24') dai += 1 break if dai == 0: print('No Solutions')
# 6330296921 (20) 147 (2021-02-22 02:51) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0: r = num1 / num2 elif op == '/' and num2 == 0: r = float('inf') return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = [int(e) for e in nums.split()] cases = generate_all_combinations( num, '+-*/' ) L = 0 r = 0 n = 0 while r != 24 and L != len(cases): listnum = cases[L] n1 = listnum[0] op1 = listnum[1] n2 = listnum[2] op2 = listnum[3] n3 = listnum[4] op3 = listnum[5] n4 = listnum[6] if r != 24 : num1 = n1 num2 = n2 op = op1 r = calc(num1, op, num2) num1 = r num2 = n3 op = op2 r = calc(num1, op, num2) num1 = r num2 = n4 op = op3 r = calc(num1, op, num2) n = 1 if r != 24 : num1 = n2 num2 = n3 op = op2 r = calc(num1, op, num2) num1 = n1 num2 = r op = op1 r = calc(num1, op, num2) num1 = r num2 = n4 op = op3 r = calc(num1, op, num2) n = 2 if r != 24 : num1 = n1 num2 = n2 op = op1 r1 = calc(num1, op, num2) num1 = n3 num2 = n4 op = op3 r2 = calc(num1, op, num2) num1 = r1 num2 = r2 op = op2 r = calc(num1, op, num2) n = 3 if r != 24 : num1 = n2 num2 = n3 op = op2 r = calc(num1, op, num2) num1 = r num2 = n4 op = op3 r = calc(num1, op, num2) num1 = n1 num2 = r op = op1 r = calc(num1, op, num2) n = 4 if r != 24 : num1 = n3 num2 = n4 op = op3 r = calc(num1, op, num2) num1 = n2 num2 = r op = op2 r = calc(num1, op, num2) num1 = n1 num2 = r op = op1 r = calc(num1, op, num2) n = 5 if r != 24 : n = 0 L += 1 if n == 0 : print('No Solutions') if n == 1 : print( '( '+'( '+ str(n1)+' ' + op1+' ' + str(n2)+' )'+' '+op2+' '+str(n3)+' )'+' '+op3+' '+str(n4)+' '+'= 24' ) if n == 2 : print( '( '+ str(n1)+' ' + op1+' ' + '( '+ str(n2)+' '+op2+' '+str(n3)+' )'+' )'+' '+op3+' '+str(n4)+' '+'= 24' ) if n == 3 : print( '( '+ str(n1)+' ' + op1+' ' + str(n2)+' )'+' '+op2+' '+'( '+str(n3)+' '+op3+' '+str(n4)+' ) '+'= 24' ) if n == 4 : print( str(n1)+' ' + op1+' '+'( ' + '( '+ str(n2)+' '+op2+' '+str(n3)+' )'+' '+op3+' '+str(n4)+' ) '+'= 24' ) if n == 5 : print( str(n1)+' ' + op1+' '+ '( '+ str(n2)+' '+op2+' '+'( '+str(n3)+' '+op3+' '+str(n4)+' )'+' ) '+'= 24' )
# 6330298121 (20) 148 (2021-02-18 22:26) def cald(num1, operators, num2): if operators == '+': r = num1 + num2 elif operators == '-': r = num1 - num2 elif operators == '*': r = num1 * num2 elif operators == '/': if num2 == 0: r = 10000000 else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() operators = '+-*/' for i in range(len(num_list)): num_list[i] = int(num_list[i]) c = generate_all_combinations( num_list,operators ) a = 0 for i in range(len(c)): d = c[i] if cald(cald(cald(d[0],d[1],d[2]),d[3],d[4]),d[5],d[6]) == 24: a += 1 print("(", "(", str(d[0]), d[1], str(d[2]),")", d[3],\ str(d[4]), ")", d[5], str(d[6]),"=",\ str(int(cald(cald(cald(d[0],d[1],d[2]),d[3],d[4]),d[5],d[6])))) break elif cald(cald(d[0],d[1],cald(d[2],d[3],d[4])),d[5],d[6]) == 24: a += 1 print("(", str(d[0]),d[1], "(" , str(d[2]), d[3], str(d[4]),\ ")", ")", d[5], str(d[6]),"=",\ str(int(cald(cald(d[0],d[1],cald(d[2],d[3],d[4])),d[5],d[6])))) break elif cald(cald(d[0],d[1],d[2]),d[3],cald(d[4],d[5],d[6])) == 24: a += 1 print("(", str(d[0]), d[1], str(d[2]),")", d[3],\ "(", str(d[4]), d[5], str(d[6]), ")","=",\ str(int(cald(cald(d[0],d[1],d[2]),d[3],cald(d[4],d[5],d[6]))))) break elif cald(d[0],d[1],cald(cald(d[2],d[3],d[4]),d[5],d[6])) == 24: a += 1 print(str(d[0]), d[1], "(", "(", str(d[2]), d[3], str(d[4]),\ ")", d[5], str(d[6]), ")","=",\ str(int(cald(d[0],d[1],cald(cald(d[2],d[3],d[4]),d[5],d[6]))))) break elif cald(d[0], d[1],cald(d[2],d[3],cald(d[4],d[5],d[6]))) == 24: a += 1 print(str(d[0]), d[1], "(", str(d[2]), d[3], "(", str(d[4]),\ d[5], str(d[6]), ")" , ")","=",\ str(int(cald(d[0], d[1],cald(d[2],d[3],cald(d[4],d[5],d[6])))))) break if a == 0: print("No Solutions")
# 6330299821 (20) 149 (2021-02-19 20:33) def operate(x, op, y): if op == "+": r = x + y elif op == "-": r = x - y elif op == "*": r = x * y elif op == "/": if y == 0 : r = math.nan else: r = x / y return r def output(z): s1 = operate(operate(operate(z[0],z[1],z[2]),z[3],z[4]),z[5],z[6]) s2 = operate(operate(z[0],z[1],operate(z[2],z[3],z[4])),z[5],z[6]) s3 = operate(operate(z[0],z[1],z[2]),z[3],operate(z[4],z[5],z[6])) s4 = operate(z[0],z[1],operate(operate(z[2],z[3],z[4]),z[5],z[6])) s5 = operate(z[0],z[1],operate(z[2],z[3],operate(z[4],z[5],z[6]))) s = [s1,s2,s3,s4,s5] return s def order(A,z): if A == 0: print("( (",z[0],z[1],z[2],")",z[3],z[4],")",z[5],z[6],"= 24") elif A == 1: print("(",z[0],z[1],"(",z[2],z[3],z[4],") )",z[5],z[6],"= 24") elif A == 2: print("(",z[0],z[1],z[2],")",z[3],"(",z[4],z[5],z[6],")","= 24") elif A == 3: print(z[0],z[1],"( (",z[2],z[3],z[4],")",z[5],z[6],")","= 24") elif A == 4: print(z[0],z[1],"(",z[2],z[3],"(",z[4],z[5],z[6],") )","= 24") def pmt(lst): if len(lst) == 0: return [] if len(lst) == 1: return [lst] l = [] for i in range(len(lst)): m = lst[i] remLst = lst[:i] + lst[i+1:] for p in pmt(remLst): l += [0] l[len(l)-1] = [m] + p return l def possible_cases(z): n = z[::2] s = z[1::2] x = [] n = pmt(n) s = pmt(s) for i in n: for j in s: q = [0]*7 q[::2] = i q[1::2] = j x += [0] x[len(x) - 1] = q return x #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split(" ") for i in range(len(a)): a[i] = int(a[i]) cases = generate_all_combinations( a, '+-*/' ) allcases = [] for e in cases: allcases += possible_cases(e) r = False i = 0 while i < len(allcases) and r == False: idk = output(allcases[i]) j = 0 while j < 5 and r == False: if idk[j] == 24 : order(j, allcases[i]), r = True j += 1 i += 1 if r == False : print("No Solutions")
# 6330300721 (19.82) 150 (2021-02-19 09:49) #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations( num_list, '+-*/' ) for i in range(len(cases)) : n1 = int(cases[i][0]) n2 = int(cases[i][2]) n3 = int(cases[i][4]) n4 = int(cases[i][6]) #1 if n2 != 0 : if cases[i][1] == '+' : r1 = n1 + n2 elif cases[i][1] == '-' : r1 = n1 - n2 elif cases[i][1] == '*' : r1 = n1 * n2 else : r1 = n1 / n2 if n3 != 0 : if cases[i][3] == '+': r2 = r1 + n3 elif cases[i][3] == '-': r2 = r1 - n3 elif cases[i][3] == '*': r2 = r1 * n3 else : r2 = r1 / n3 if n4 != 0 : if cases[i][5] == '+': r = r2 + n4 elif cases[i][5] == '-': r = r2 - n4 elif cases[i][5] == '*': r = r2 * n4 else : r = r2 / n4 if r == 24 : e = '('+' '+'('+' '+cases[i][0]+' '+cases[i][1]+' '+cases[i][2]+' '+')'+' '+cases[i][3]+' '+cases[i][4]+' '+')'+' '+cases[i][5]+' '+cases[i][6] break #2 if n3 != 0 : if cases[i][3] == '+' : r1 = n2 + n3 elif cases[i][3] == '-' : r1 = n2 - n3 elif cases[i][3] == '*' : r1 = n2 * n3 else : r1 = n2 / n3 if r1 != 0 : if cases[i][1] == '+' : r2 = n1 + r1 elif cases[i][1] == '-' : r2 = n1 - r1 elif cases[i][1] == '*' : r2 = n1 * r1 else : r2 = n1 / r1 if n4 != 0 : if cases[i][5] == '+' : r = r2 + n4 elif cases[i][5] == '-' : r = r2 - n4 elif cases[i][5] == '*' : r = r2 * n4 else : r = r2 / n4 if r == 24 : e = '('+' '+cases[i][0]+' '+cases[i][1]+' '+'('+' '+cases[i][2]+' '+cases[i][3]+' '+cases[i][4]+' '+')'+' '+')'+' '+cases[i][5]+' '+cases[i][6] break #3 if n2 != 0 : if cases[i][1] == '+' : r1 = n1 + n2 elif cases[i][1] == '-' : r1 = n1 - n2 elif cases[i][1] == '*' : r1 = n1 * n2 else : r1 = n1 / n2 if n4 != 0 : if cases[i][5] == '+' : r2 = n3 + n4 elif cases[i][5] == '-' : r2 = n3 - n4 elif cases[i][5] == '*' : r2 = n3 * n4 else : r2 = n3 / n4 if r2 != 0 : if cases[i][3] == '+' : r = r1 + r2 elif cases[i][3] == '-' : r = r1 - r2 elif cases[i][3] == '*' : r = r1 * r2 else : r = r1 / r2 if r == 24 : e = '('+' '+cases[i][0]+' '+cases[i][1]+' '+cases[i][2]+' '+')'+' '+cases[i][3]+' '+'('+' '+cases[i][4]+' '+cases[i][5]+' '+cases[i][6]+' '+')' break #4 if n3 != 0 : if cases[i][3] == '+' : r1 = n2 + n3 elif cases[i][3] == '-' : r1 = n2 - n3 elif cases[i][3] == '*' : r1 = n2 * n3 else : r1 = n2 / n3 if n4 != 0 : if cases[i][5] == '+' : r2 = r1 + n4 elif cases[i][5] == '-' : r2 = r1 - n4 elif cases[i][5] == '*' : r2 = r1 * n4 else : r2 = r1 / n4 if r2 != 0 : if cases[i][1] == '+' : r = n1 + r2 elif cases[i][1] == '-' : r = n1 - r2 elif cases[i][1] == '*' : r = n1 * r2 else : r = n1 / r2 if r == 24 : e = cases[i][0]+' '+cases[i][1]+' '+'('+' '+'('+' '+cases[i][2]+' '+cases[i][3]+' '+cases[i][4]+' '+')'+' '+cases[i][5]+' '+cases[i][6]+' '+')' break #5 if n4 != 0 : if cases[i][5] == '+' : r1 = n3 + n4 elif cases[i][5] == '-' : r1 = n3 - n4 elif cases[i][5] == '*' : r1 = n3 * n4 else : r1 = n3 / n4 if r1 != 0 : if cases[i][3] == '+' : r2 = n2 + r1 elif cases[i][3] == '-' : r2 = n2 - r1 elif cases[i][3] == '*' : r2 = n2 * r1 else : r2 = n2 / r1 if r2 != 0 : if cases[i][1] == '+' : r = n1 + r2 elif cases[i][1] == '-' : r = n1 - r2 elif cases[i][1] == '*' : r = n1 * r2 else : r = n1 / r2 if r == 24 : e = cases[i][0]+' '+cases[i][1]+' '+'('+' '+cases[i][2]+' '+cases[i][3]+' '+'('+' '+cases[i][4]+' '+cases[i][5]+' '+cases[i][6]+' '+')'+' '+')' break if r == 24 : print(e+' '+'= 24') else : print('No Solution')
# 6330301321 (20) 151 (2021-02-22 18:52) def calc(n1,op,n2) : if n1 != 'False' and n2 != 'False': if op == '+' : return n1+n2 if op == '-' : return n1-n2 if op == '*' : return n1*n2 if op == '/' : if(n2 != 0): return n1/n2 else : return 'False' else : return 'False' def check(case) : n1 = case[0] op1 = case[1] n2 = case[2] op2 = case[3] n3 = case[4] op3 = case[5] n4 = case[6] minicase = [ ['(','(',n1,op1,n2,')',op2,n3,')',op3,n4], ['(',n1,op1,'(',n2,op2,n3,')',')',op3,n4], ['(',n1,op1,n2,')',op2,'(',n3,op3,n4,')'], [n1,op1,'(','(',n2,op2,n3,')',op3,n4,')'], [n1,op1,'(',n2,op2,'(',n3,op3,n4,')',')'] ] minicaseprod = [] minicaseprod.append(calc(calc(calc(n1,op1,n2),op2,n3),op3,n4)) minicaseprod.append(calc(calc(n1,op1,calc(n2,op2,n3)),op3,n4)) minicaseprod.append(calc(calc(n1,op1,n2),op2,calc(n3,op3,n4))) minicaseprod.append(calc(n1,op1,calc(calc(n2,op2,n3),op3,n4))) minicaseprod.append(calc(n1,op1,calc(n2,op2,calc(n3,op3,n4)))) for i in range(5) : if minicaseprod[i] == 24 : return True,minicase[i] return False,[] #--------------------------------------------------------- nums = input('Enter 4 integers: ') numbers = [int(e) for e in nums.split(' ')] cases = generate_all_combinations( numbers, '+-*/' ) found = False for case in cases : checkcase = check(case) if(checkcase[0]) : for i in range(len(checkcase[1])) : checkcase[1][i] = str(checkcase[1][i]) print(' '.join(checkcase[1])+' = 24') found = True break if not found : print('No Solutions')
# 6330302021 (20) 152 (2021-02-20 15:45) def calc(num1, op, num2): r = 0 if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1*num2 elif op == '/'and num2 != 0: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations( num_list, '+-*/' ) countans = False for i in range (len(cases)): num1 = int(cases[i][0]) op1 = cases[i][1] num2 = int(cases[i][2]) op2 = cases[i][3] num3 = int(cases[i][4]) op3 = cases[i][5] num4 = int(cases[i][6]) if calc(calc(calc(num1, op1, num2), op2, num3), op3, num4) == 24: print('(','(',num1 ,op1,num2 ,')',op2, num3,')',op3,num4,'=','24') countans = True break elif calc(calc(num1, op1, calc(num2, op2, num3)), op3, num4) == 24: print('(', num1, op1, '(', num2, op2 ,num3,')', ')', op3,num4,'=','24') countans = True break elif calc(calc(num1, op1, num2), op2, calc(num3, op3, num4)) == 24: print('(', num1, op1 ,num2, ')' ,op2 ,'(' ,num3, op3 ,num4 ,')','=','24') countans = True break elif calc(num1 ,op1 ,(calc(calc(num2, op2,num3), op3, num4))) == 24: print(num1, op1, '(', '(', num2, op2, num3 ,')' ,op3, num4, ')','=','24') countans = True break elif calc(num1 ,op1 ,(calc(num2 ,op2 ,calc(num3, op3, num4)))) == 24: print(num1, op1, '(', num2, op2 ,'(', num3, op3, num4 ,')',')','=','24') countans = True break if countans == False: print('No Solutions')
# 6330303621 (18) 153 (2021-02-21 13:50) def calc(num1, operation, num2): if operation == '+': r = num1+num2 elif operation == '-': r = num1-num2 elif operation == '*': r = num1*num2 elif operation == '/': if num2!=0 : r = num1/num2 else : r = 1000000 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') m = nums.split() operators='+-*/' cases=generate_all_combinations(m, operators) i=0 c=0 j=0 while c!=24 and i!=(len(cases)-1) : c = calc(calc(calc(int(cases[i][0]), cases[i][1], int(cases[i][2])), cases[i][3], int(cases[i][4])), cases[i][5], int(cases[i][6])) i+=1 if c==24 : j = 1 a = cases[i-1] print("( ( "+str(a[0])+' '+str(a[1])+' '+str(a[2])+' ) '+str(a[3])+' '+str(a[4])+' ) '+str(a[5])+' '+str(a[6])+' = 24') i=0 c=0 while c!=24 and i!=(len(cases)-1) and j!=1 : c = calc(calc(int(cases[i][0]), cases[i][1], calc(int(cases[i][2]), cases[i][3], int(cases[i][4]))), cases[i][5], int(cases[i][6])) i+=1 if j!=1 : if c==24 : a = cases[i-1] print("( "+str(a[0])+' '+str(a[1])+' ( '+str(a[2])+' '+str(a[3])+' '+str(a[4])+' ) ) '+str(a[5])+' '+str(a[6])+' = 24') j=1 i=0 c=0 while c!=24 and i!=(len(cases)-1) and j!=1 : c = calc(calc(int(cases[i][0]), cases[i][1], int(cases[i][2])), cases[i][3], calc(int(cases[i][4]), cases[i][5], int(cases[i][6]))) i+=1 if j!=1 : if c==24 : a = cases[i-1] print("( "+str(a[0])+' '+str(a[1])+' '+str(a[2])+' ) '+str(a[3])+' ( '+str(a[4])+' '+str(a[5])+' '+str(a[6])+' ) = 24') j=1 i=0 c=0 while c!=24 and i!=(len(cases)-1) and j!=1 : c = calc(int(cases[i][0]), cases[i][1], calc(calc(int(cases[i][2]), cases[i][3], int(cases[i][4])), cases[i][5], int(cases[i][6]))) i+=1 if j!=1 : if c==24 : a = cases[i-1] print(str(a[0])+' '+str(a[1])+' ( ( '+str(a[2])+' '+str(a[3])+' '+str(a[4])+' ) '+str(a[5])+' '+str(a[6])+' ) = 24') j=1 i=0 c=0 while c!=24 and i!=(len(cases)-1) and j!=1 : c = calc(int(cases[i][0]), cases[i][1], calc(calc(int(cases[i][2]), cases[i][3], int(cases[i][4])), cases[i][5], int(cases[i][6]))) i+=1 if j!=1 : if c==24 : a = cases[i-1] print(str(a[0])+' '+str(a[1])+' ( '+str(a[2])+' '+str(a[3])+' ( '+str(a[4])+' '+str(a[5])+' '+str(a[6])+' ) ) = 24') j=1 else : print("No Solutions")
# 6330304221 (20) 154 (2021-02-18 11:05) def calc(num1, op, num2): if num1 == None or num2 == None: return None else: if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 else: if num2 == 0: return None r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] cases = generate_all_combinations( nums, '+-*/' ) solved = False for case in cases: num1, num2, num3, num4 = case[0], case[2], case[4], case[6] op1, op2, op3 = case[1], case[3], case[5] if calc(calc(calc(num1, op1, num2), op2, num3), op3, num4) == 24: solved = True print('( ( {} {} {} ) {} {} ) {} {} = 24'.format(*case)) elif calc(calc(num1, op1, calc(num2, op2, num3)), op3, num4) == 24: solved = True print('( {} {} ( {} {} {} ) ) {} {} = 24'.format(*case)) elif calc(calc(num1, op1, num2), op2, calc(num3, op3, num4)) == 24: solved = True print('( {} {} {} ) {} ( {} {} {} ) = 24'.format(*case)) elif calc(num1, op1, calc(calc(num2, op2, num3), op3, num4)) == 24: solved = True print('{} {} ( ( {} {} {} ) {} {} ) = 24'.format(*case)) elif calc(num1, op1, calc(num2, op2, calc(num3, op3, num4))) == 24: solved = True print('{} {} ( {} {} ( {} {} {} ) ) = 24'.format(*case)) if solved: break if solved == False: print('No Solutions')
# 6330305921 (20) 155 (2021-02-18 15:43) def calc(num1,op,num2): r = 0.0 if op == '+': r = float(num1)+float(num2) if op == '-': r = float(num1)-float(num2) if op == '*': r = float(num1)*float(num2) if op == '/': if float(num2) != 0: r = float(num1)/float(num2) else : r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_lists = nums.split() k = 0 cases = generate_all_combinations( num_lists, '+-*/' ) for c in cases : if 24 == calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]): print('(','(',c[0],c[1],c[2],')',c[3],c[4],')',c[5],c[6],'= 24') k += 1 break if 24 == calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]): print('(',c[0],c[1],'(',c[2],c[3],c[4],')',')',c[5],c[6],'= 24') k +=1 break if 24 == calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])): print('(',c[0],c[1],c[2],')',c[3],'(',c[4],c[5],c[6],')','= 24') k += 1 break if 24 == calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])): print(c[0],c[1],'(','(',c[2],c[3],c[4],')',c[5],c[6],')','= 24') k += 1 break if 24 == calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) : print(c[0],c[1],'(',c[2],c[3],'(',c[4],c[5],c[6],')',')','= 24') k += 1 break if k == 0 : print('No Solutions')
# 6330306521 (20) 156 (2021-02-22 19:50) def cal(num1,op1,num2) : d='' if op1=='+' : a=num1+num2 d=' + ' elif op1=='-' : a=num1-num2 d=' - ' elif op1=='*' : a=num1*num2 d=' * ' elif op1=='/' : if num2==0 : num2=1000000000 a=num1/num2 d=' / ' if num2!=0 : a=num1/num2 d=' / ' return a,d #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() numss = [int(nums[0]),int(nums[1]),int(nums[2]),int(nums[3])] cases = generate_all_combinations( numss , '+-*/' ) res=0 for i in range(len(cases)) : num1=cases[i][0] op1=cases[i][1] num2=cases[i][2] op2=cases[i][3] num3=cases[i][4] op3=cases[i][5] num4=cases[i][6] sum1=cal(num1,op1,num2)[0] sum2=cal(sum1,op2,num3)[0] s1=cal(sum2,op3,num4)[0] dis1='( ( '+str(num1)+' '+op1+' '+str(num2)+' ) '\ +op2+' '+str(num3)+' ) '+op3+' '+str(num4) if s1==24 : print(dis1,' = 24') res=1 break summ1=cal(num2,op2,num3)[0] summ2=cal(num1,op1,summ1)[0] s2=cal(summ2,op3,num4)[0] dis2='( '+str(num1)+' '+op1+' ( '+str(num2)+' '+op2 \ +' '+str(num3)+' ) ) '+op3+' '+str(num4) if s2==24 : print(dis2,' = 24') res=1 break summm1=cal(num1,op1,num2)[0] summm2=cal(num3,op3,num4)[0] s3=cal(summm1,op2,summm2)[0] dis3='( '+str(num1)+' '+op1+' '+str(num2)+' ) '+op2+' ( ' \ +str(num3)+' '+op3+' '+str(num4)+' )' if s3==24 : print(dis3,' = 24') res=1 break summmm1=cal(num2,op2,num3)[0] summmm2=cal(summmm1,op3,num4)[0] s4=cal(num1,op1,summmm2)[0] dis4=str(num1)+' '+op1+' ( ( '+str(num2)+' '+op2+' ' \ +str(num3)+' ) '+op3+' '+str(num4)+' )' if s4==24 : print(dis4,' = 24') res=1 break summmmm1=cal(num3,op3,num4)[0] summmmm2=cal(num2,op2,summmmm1)[0] s5=cal(num1,op1,summmmm2)[0] dis5=str(num1)+' '+op1+' ( '+str(num2)+' '+op2+' ( '+ \ str(num3)+' '+op3+' '+str(num4)+' ) )' if s5==24 : print(dis5,' = 24') res=1 break if res==0 : print('No Solutions')
# 6330308821 (20) 157 (2021-02-18 16:08) def calc(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op == "-": r = float(num1) - float(num2) elif op == "/": if float(num2) != 0: r = float(num1) / float(num2) else: r = float(num1) + float(num2) elif op == "*": r = float(num1) * float(num2) return r def real_ans(n,e): if n == 1: print(f"( ( {e[0]} {e[1]} {e[2]} ) {e[3]} {e[4]} ) {e[5]} {e[6]} = 24") elif n == 2: print(f"( {e[0]} {e[1]} ( {e[2]} {e[3]} {e[4]} ) ) {e[5]} {e[6]} = 24") elif n == 3: print(f"( {e[0]} {e[1]} {e[2]} ) {e[3]} ( {e[4]} {e[5]} {e[6]} ) = 24") elif n == 4: print(f"{e[0]} {e[1]} ( ( {e[2]} {e[3]} {e[4]} ) {e[5]} {e[6]} ) = 24") elif n == 5: print(f"{e[0]} {e[1]} ( {e[2]} {e[3]} ( {e[4]} {e[5]} {e[6]} ) ) = 24") #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations(nums,'+-*/') for e in cases: ans1 = calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6]) ans2 = calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6]) ans3 = calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6])) ans4 = calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6])) ans5 = calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6]))) l = [ans1,ans2,ans3,ans4,ans5] n = 0 if 24 in l: for i in range(len(l)): if l[i] == 24: n = i+1 break break if n != 0: real_ans(n,e) else: print("No Solutions")
# 6330309421 (12.08) 158 (2021-02-22 20:00) def calc(num1, operation, num2): if operation == '+': r = int(num1)+int(num2) elif operation == '-': r = int(num1)-int(num2) elif operation == '*': r = int(num1)*int(num2) elif operation == '/': if int(num2) == 0 : r = False else : r = int(num1)/int(num2) elif r == False : r = 'Error' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( nums.split(), '+-*/') for i in cases : if calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) == 24 : print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=','24') break elif calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) == 24 : print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','=','24') break elif calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) == 24 : print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=','24') break elif calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24 : print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=','24') break elif calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) == 24 : print(i[6],i[5],'(',i[0],i[1],'(',i[2],i[3],i[4],')','=','24') break else : print('No Solutions')
# 6330310021 (20) 159 (2021-02-22 11:56) def calc(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op == "/": if float(num2) == 0: r = 0 else: r = float(num1)/float(num2) elif op == "-": r = float(num1) - float(num2) elif op == "*": r = float(num1) * float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_lists = nums.split() WIN = False cases = generate_all_combinations(nums_lists, '+-*/') for i in cases: if calc(calc(calc(i[0], i[1], i[2]), i[3], i[4]), i[5], i[6]) == 24: print("( (", i[0], i[1], i[2], ")", i[3], i[4], ")", i[5], i[6], "= 24") WIN = True break elif calc(calc(i[0], i[1], calc(i[2], i[3], i[4])), i[5], i[6]) == 24: print("(", i[0], i[1], "(", i[2], i[3], i[4], ") )", i[5], i[6], "= 24") WIN = True break elif calc(calc(i[0], i[1], i[2]), i[3],calc(i[4], i[5], i[6])) == 24: print("(", i[0], i[1], i[2], ")", i[3], "(", i[4], i[5], i[6], ") = 24") WIN = True break elif calc(i[0], i[1],calc(calc(i[2], i[3], i[4]), i[5], i[6])) == 24: print(i[0], i[1], "( (", i[2], i[3], i[4], ")", i[5], i[6], ") = 24") WIN = True break elif calc(i[0], i[1], calc(i[2], i[3], calc(i[4], i[5], i[6]))) == 24: print(i[0], i[1], "(", i[2], i[3], "(", i[4], i[5], i[6], ") ) = 24") WIN = True break if not WIN: print("No Solutions")
# 6330311621 (18) 160 (2021-02-21 23:05) def calc(num1, op, num2): try : if op == "+": return num1 + num2 elif op == "-": return num1 - num2 elif op == "*": return num1 * num2 elif op == "/" and num2 != 0: return num1 / num2 except : return #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() a = 0 cases = generate_all_combinations( nums , '+-*/' ) for i in range(len(cases)): n = cases[i][::2] for j in range(len(n)): n[j] = int(n[j]) cal1 = calc(calc(calc(n[0], cases[i][1], n[1]), cases[i][3], n[2]), cases[i][5], n[3]) # ( ( 1 + 2 ) + 3 ) + 4 cal2 = calc(calc(n[0], cases[i][1], calc(n[1], cases[i][3], n[2])), cases[i][5], n[3]) # ( 1 + ( 2 + 3 ) ) + 4 cal3 = calc(calc(n[0], cases[i][1], n[1]), cases[i][3], calc(n[2], cases[i][5], n[3])) # ( 1 + 2 ) + ( 3 + 4 ) cal4 = calc(n[0], cases[i][1], calc(calc(n[1], cases[i][3], n[2]), cases[i][5], n[3])) # 1 + ( ( 2 + 3 ) + 4 ) cal5 = calc(n[0], cases[i][1], calc(n[1], cases[i][3], calc(n[2], cases[5], n[3]))) # 1 + ( 2 + ( 3 + 4 ) ) try : if cal1 == 24: print('( ( '+str(n[0])+' '+cases[i][1]+' '+str(n[1])+' ) '+cases[i][3]+' '+str(n[2])+' ) '+cases[i][5]+' '+str(n[3])+' = 24') a = 1 break elif cal2 == 24: print('( '+str(n[0])+' '+cases[i][1]+' ( '+str(n[1])+' '+cases[i][3]+' '+str(n[2])+' ) ) '+cases[i][5]+' '+str(n[3])+' = 24') a = 1 break elif cal3 == 24: print('( '+str(n[0])+' '+cases[i][1]+' '+str(n[1])+' ) '+cases[i][3]+' ( '+str(n[2])+' '+cases[i][5]+' '+str(n[3])+' )'+' = 24') a = 1 break elif cal4 == 24: print(str(n[0])+' '+cases[i][1]+' ( ( '+str(n[1])+' '+cases[i][3]+' '+str(n[2])+' ) '+cases[i][5]+' '+str(n[3])+' )'+' = 24') a = 1 break elif cal5 == 24: print(str(n[0])+' '+cases[i][1]+' ( '+str(n[1])+' '+cases[i][3]+' ( '+str(n[2])+' '+cases[i][5]+' '+str(n[3])+' ) )'+' = 24') a = 1 break except : continue if a != 1: print("No Solutions")
# 6330312221 (20) 161 (2021-02-18 21:36) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = math.inf else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = nums.split() cases = generate_all_combinations( n, '+-*/' ) for i in range(len(cases)): ans1 = calc(int(cases[i][0]), cases[i][1], int(cases[i][2])) ans2 = calc(ans1, cases[i][3], int(cases[i][4])) ans3 = calc(ans2, cases[i][5], int(cases[i][6])) if ans3 == 24 : found = True print('('+' '+ '('+' '+ cases[i][0] +' '+ cases[i][1] +' '+ cases[i][2] +' '+')'+' '+ cases[i][3] +' '+cases[i][4]+' '+')'+' '+cases[i][5]+' '+cases[i][6]+' '+'='+' '+'24') break else: ans1 = calc(int(cases[i][2]), cases[i][3], int(cases[i][4])) ans2 = calc(int(cases[i][0]), cases[i][1], ans1) ans3 = calc(ans2, cases[i][5], int(cases[i][6])) if ans3 == 24 : found = True print('('+' '+ cases[i][0] +' '+ cases[i][1] +' '+'('+' '+ cases[i][2] +' '+ cases[i][3] +' '+cases[i][4]+' '+')'+' '+')'+' '+cases[i][5]+' '+cases[i][6]+' '+'='+' '+'24') break else: ans1 = calc(int(cases[i][0]), cases[i][1], int(cases[i][2])) ans2 = calc(int(cases[i][4]), cases[i][5], int(cases[i][6])) ans3 = calc(ans1, cases[i][3], ans2) if ans3 == 24 : found = True print('('+' '+ cases[i][0] +' '+ cases[i][1] +' '+ cases[i][2] +' '+')'+' '+ cases[i][3] +' '+'('+' '+cases[i][4]+' '+cases[i][5]+' '+cases[i][6]+' '+')'+' '+'='+' '+'24') break else : ans1 = calc(int(cases[i][2]), cases[i][3], int(cases[i][4])) ans2 = calc(ans1, cases[i][5], int(cases[i][6])) ans3 = calc(int(cases[i][0]), cases[i][1], ans2) if ans3 == 24 : found = True print(cases[i][0] +' '+ cases[i][1] +' '+'('+' '+'('+' '+ cases[i][2] +' '+ cases[i][3] +' '+cases[i][4]+' '+')'+' '+cases[i][5]+' '+cases[i][6]+' '+')'+' '+'='+' '+'24') break else : ans1 = calc(int(cases[i][4]), cases[i][5], int(cases[i][6])) ans2 = calc(int(cases[i][2]), cases[i][3], ans1) ans3 = calc(int(cases[i][0]), cases[i][1], ans2) if ans3 == 24 : found = True print(cases[i][0] +' '+ cases[i][1] +' '+'('+' '+ cases[i][2] +' '+ cases[i][3] +' '+'('+' '+cases[i][4]+' '+cases[i][5]+' '+cases[i][6]+' '+')'+' '+')'+'='+' '+'24') break else: found = False if not found : print("No Solutions")
# 6330313921 (20) 162 (2021-02-22 08:02) def h(a, op, b): k = 0 if op == '+': k = a+b if op == '-': k = a-b if op == '*': k = a*b if op == '/': if b == 0: k = math.inf else: k = a/b return k def gen(i,a,b,c,d,e,f,g): if i == 0: return h(h(h(a,b,c),d,e),f,g) if i == 1: return h(h(a,b,h(c,d,e)),f,g) if i == 2: return h(h(a,b,c),d,h(e,f,g)) if i == 3: return h(a,b,h(h(c,d,e),f,g)) if i == 4: return h(a,b,h(c,d,h(e,f,g))) def printout(i,a,b,c,d,e,f,g): if i == 0: print("( (",a,b,c,")",d,e,")",f,g,"= 24") if i == 1: print("(",a,b,"(",c,d,e,") )",f,g,"= 24") if i == 2: print("(",a,b,c,")",d,"(",e,f,g,")","= 24") if i == 3: print(a,b,"( (",c,d,e,")",f,g,")","= 24") if i == 4: print(a,b,"(",c,d,"(",e,f,g,") )","= 24") #--------------------------------------------------------- nums = input('Enter 4 integers: ') a,b,c,d = map(int,nums.split(" ")) ii = [a,b,c,d] cases = generate_all_combinations( ii, '+-*/' ) aa=True for x in cases: a = x[0] b = x[1] c = x[2] d = x[3] e = x[4] f = x[5] g = x[6] for i in range(5): v = gen(i,a,b,c,d,e,f,g) if v == 24: printout(i,a,b,c,d,e,f,g) aa = False break if aa == False: break if aa: print("No Solutions")
# 6330314521 (12.08) 163 (2021-02-22 20:43) #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations( nums, '+-*/') def calc(num1, operation, num2): if operation == '+': r = int(num1)+int(num2) elif operation == '-': r = int(num1)-int(num2) elif operation == '*': r = int(num1)*int(num2) elif operation == '/' and int(num2) != 0 : r = int(num1)/int(num2) else : r = False return r ##-------------------case part---------------- for i in cases : #((a_b)_c)_d first_case = calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) #(a_(b_c))_d second_case = calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) #a_(b_(c_d)) third_case = calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) #a_((b_c)_d) fourth_case = calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) #(a_b)_(c_d) last_case = calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) if first_case == 24 or second_case == 24 or third_case == 24 or fourth_case == 24 or last_case == 24 : break ##----------answer part------- if first_case == 24: print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=','24') elif second_case == 24: print('(',i[0],i[1],'(',i[2],i[3],i[4],')',i[5],i[6],'=','24') elif third_case == 24: print('(',i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','=','24') elif fourth_case == 24: print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','=','24') elif last_case == 24: print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=','24') else : print('No Solutions')
# 6330315121 (20) 164 (2021-02-20 18:22) def calc(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1)*float(num2) elif op == '/' and num2 !=0 : r = float(num1)/float(num2) else: r = float(num1) + float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.split()] cases = generate_all_combinations( num_list, '+-*/' ) for e in cases: y = e[::2] z = e[1::2] a = calc(y[0],z[0],y[1]) b = calc(a,z[1],y[2]) c = calc(b,z[2],y[3]) a1 = calc(y[1],z[1],y[2]) b1 = calc(y[0],z[0],a1) c1 = calc(b1,z[2],y[3]) a2 = calc(y[0],z[0],y[1]) b2 = calc(y[2],z[2],y[3]) c2 = calc(a2,z[1],b2) a3 = calc(y[1],z[1],y[2]) b3 = calc(a3,z[2],y[3]) c3 = calc(y[0],z[0],b3) a4 = calc(y[2],z[2],y[3]) b4 = calc(y[1],z[1],a4) c4 = calc(y[0],z[0],b4) if c == float(24): ans = 'abc' break elif c1 == float(24): ans = 'a1b1c1' break elif c2 == float(24): ans = 'a2b2c2' break elif c3 == float(24): ans = 'a3b3c3' break elif c4 == float(24): ans = 'a4b4c4' break else: ans = 'No Solutions' if ans == 'abc': print('( (',y[0],z[0],y[1],')',z[1],y[2],')',z[2],y[3],'= 24') elif ans == 'a1b1c1': print('(',y[0],z[0],'(',y[1],z[1],y[2],') )',z[2],y[3],'= 24') elif ans == 'a2b2c2': print('(',y[0],z[0],y[1],')',z[1],'(',y[2],z[2],y[3],')','= 24') elif ans == 'a3b3c3': print(y[0],z[0],'( (',y[1],z[1],y[2],')',z[2],y[3],')','= 24') elif ans == 'a4b4c4': print(y[0],z[0],'(',y[1],z[1],'(',y[2],z[2],y[3],') )','= 24') else: print('No Solutions')
# 6330316821 (20) 165 (2021-02-22 12:01) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': if num2 == 0 : r = 0 else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums , '+-*/' ) for case in cases : r1 = calc(int(case[0]),case[1],int(case[2])) r2 = calc(r1,case[3],int(case[4])) r3 = calc(r2,case[5],int(case[6])) s1 = calc(int(case[2]), case[3], int(case[4])) s2 = calc(int(case[0]), case[1], s1) s3 = calc(s2, case[5], int(case[6])) t1 = calc(int(case[0]), case[1], int(case[2])) t2 = calc(int(case[4]), case[5], int(case[6])) t3 = calc(t1, case[3], t2) u1 = calc(int(case[2]), case[3], int(case[4])) u2 = calc(u1, case[5], int(case[6])) u3 = calc(int(case[0]), case[1], u2) v1 = calc(int(case[4]), case[5], int(case[6])) v2 = calc(int(case[2]), case[3], v1) v3 = calc(int(case[0]), case[1], v2) if r3 == 24 : print("( ( "+case[0],case[1],case[2]+" )",case[3],case[4]+" )",case[5],case[6] + " = 24") break elif s3 == 24: print("( " + case[0], case[1], "( " + case[2], case[3], case[4] + " ) )", case[5], case[6] + " = 24") break elif t3 == 24 : print("( " + case[0], case[1], case[2]+" )", case[3],"( " + case[4], case[5], case[6]+" )" + " = 24") break elif u3 == 24 : print(case[0], case[1], "( ( "+case[2], case[3], case[4]+" )", case[5], case[6]+" )" + " = 24") break elif v3 == 24: print(case[0], case[1], "( " + case[2], case[3], "( " + case[4], case[5], case[6] + " ) )" + " = 24") break if r3 != 24 and s3 != 24 and t3 != 24 and u3 != 24 and v3 != 24: print("No Solutions")
# 6330317421 (19.84) 166 (2021-02-21 15:09) def cal(n1, o ,n2): if o == '+': z = float(n1) + float(n2) elif o == '-': z = float(n1) - float(n2) elif o == '*': z = float(n1) * float(n2) elif o == '/': if float(n2) == 0: z = math.inf else: z = float(n1) / float(n2) z = str(z) return z #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... i,j,k,l = nums.split() ... cases = generate_all_combinations( [i,j,k,l], '+-*/' ) for a in cases: if float(24) == float(cal(cal(cal(a[0],a[1],a[2]),a[3],a[4]),a[5],a[6])): print('( (',a[0],a[1],a[2],')',a[3],a[4],')',a[5],a[6],'= 24') break elif float(24) == float(cal(cal(a[0],a[1],cal(a[2],a[3],a[4])),a[5],a[6])): print('(',a[0],a[1],'(',a[2],a[3],a[4],') )',a[5],a[6],'= 24') break elif float(24) == float(cal(cal(a[0],a[1],a[2]),a[3],cal(a[4],a[5],a[6]))): print('(',a[0],a[1],a[2],')',a[3],'(',a[4],a[5],a[6],')','= 24') break elif float(24) == float(cal(a[0],a[1],cal(cal(a[2],a[3],a[4]),a[5],a[6]))): print(a[0],a[1],'( (',a[2],a[3],a[4],')',a[5],a[6],')','= 24') break elif float(24) == float(cal(a[0],a[1],cal(a[2],a[3],cal(a[4],a[5],a[6])))): print(a[0],a[1],'(',a[2],a[3],'(',a[4],a[5],a[6],') )','= 24') break else : print('No Solutiions') ...
# 6330318021 (18) 167 (2021-02-22 15:01) def calc(num1, operation, num2): if operation == '+': r = float(num1) + float(num2) elif operation == '-': r = float(num1) - float(num2) elif operation == '*' : r = float(num1) * float(num2) elif operation == '/': r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list=nums.split() cases = generate_all_combinations( num_list, '+-*/' ) case=['','','','','','','','','','',''] for i in range(len(cases)): case_1=case case_1[0]=case_1[1]='(' ; case_1[5]=case_1[8]=')' case_1[2]=cases[i][0] case_1[3]=cases[i][1] case_1[4]=cases[i][2] case_1[6]=cases[i][3] case_1[7]=cases[i][4] case_1[9]=cases[i][5] case_1[10]=cases[i][6] cf=(' ').join(case_1) if cases[i][1]=='/' and cases[i][2]=='0': ans=0 else : if cases[i][3]=='/' and cases[i][4]=='0': ans=0 else : if cases[i][5]=='/' or cases[i][6]=='0': ans=0 else : x=calc(cases[i][0],cases[i][1],cases[i][2]) y=calc(x,cases[i][3],cases[i][4]) ans=calc(y,cases[i][5],cases[i][6]) if ans == 24: x=calc(cases[i][0],cases[i][1],cases[i][2]) y=calc(x,cases[i][3],cases[i][4]) ans=calc(y,cases[i][5],cases[i][6]) print(str(cf),'=', int(ans)) break if ans != 24 : for i in range(len(cases)): case_2=case case_2[0]=case_2[3]='(' ; case_2[7]=case_2[8]=')' case_2[1]=cases[i][0] case_2[2]=cases[i][1] case_2[4]=cases[i][2] case_2[5]=cases[i][3] case_2[6]=cases[i][4] case_2[9]=cases[i][5] case_2[10]=cases[i][6] cf=(' ').join(case_2) n=0 if cases[i][3]=='/' and cases[i][4]=='0': ans=0 else: if cases[i][1]=='/' and calc(cases[i][2],cases[i][3],cases[i][4])==0: ans=0 else: if cases[i][5]=='/' and cases[i][6]=='0' : ans=0 else: x=calc(cases[i][2],cases[i][3],cases[i][4]) y=calc(cases[i][0],cases[i][1],x) ans=calc(y,cases[i][5],cases[i][6]) if ans == 24: x=calc(cases[i][2],cases[i][3],cases[i][4]) y=calc(cases[i][0],cases[i][1],x) ans=calc(y,cases[i][5],cases[i][6]) print(str(cf),'=',int(ans)) break if ans != 24 : for i in range(len(cases)): case_3=case case_3[0]=case_3[6]='(' ; case_3[4]=case_3[10]=')' case_3[1]=cases[i][0] case_3[2]=cases[i][1] case_3[3]=cases[i][2] case_3[5]=cases[i][3] case_3[7]=cases[i][4] case_3[8]=cases[i][5] case_3[9]=cases[i][6] cf=(' ').join(case_3) if cases[i][1]=='/' and cases[i][2]=='0': ans=0 else : if cases[i][5]=='/' and cases[i][6]=='0': ans=0 else : if cases[i][3]=='/' and calc(cases[i][4],cases[i][5],cases[i][6])==0: ans=0 else : x=calc(cases[i][0],cases[i][1],cases[i][2]) y=calc(cases[i][4],cases[i][5],cases[i][6]) ans=calc(x,cases[i][3],y) if ans == 24: x=calc(cases[i][0],cases[i][1],cases[i][2]) y=calc(cases[i][4],cases[i][5],cases[i][6]) ans=calc(x,cases[i][3],y) print(str(cf),'=',int(ans)) break if ans != 24 : for i in range(len(cases)): case_4=case case_4[2]=case_4[3]='(' ; case_4[7]=case_4[10]=')' case_4[0]=cases[i][0] case_4[1]=cases[i][1] case_4[4]=cases[i][2] case_4[5]=cases[i][3] case_4[6]=cases[i][4] case_4[8]=cases[i][5] case_4[9]=cases[i][6] cf=(' ').join(case_4) if cases[i][3]=='/' and cases[i][4]=='0': ans=0 else : if cases[i][5]=='/' and cases[i][6]=='0': ans=0 else : x=calc(cases[i][2],cases[i][3],cases[i][4]) y=calc(x,cases[i][5],cases[i][6]) if cases[i][1]=='/' and y==0: ans=0 else : x=calc(cases[i][2],cases[i][3],cases[i][4]) y=calc(x,cases[i][5],cases[i][6]) ans=calc(cases[i][0],cases[i][1],y) if ans == 24: x=calc(cases[i][2],cases[i][3],cases[i][4]) y=calc(x,cases[i][5],cases[i][6]) ans=calc(cases[i][0],cases[i][1],y) print(str(cf),'=',int(ans)) break if ans != 24 : for i in range(len(cases)): case_5=case case_5[2]=case_5[5]='(' ; case_5[9]=case_5[10]=')' case_5[0]=cases[i][0] case_5[1]=cases[i][1] case_5[3]=cases[i][2] case_5[4]=cases[i][3] case_5[6]=cases[i][4] case_5[7]=cases[i][5] case_5[8]=cases[i][6] cf=(' ').join(case_5) if cases[i][5]=='/' and cases[i][6]=='0': ans=0 else : if cases[i][3]=='/' and calc(cases[i][4],cases[i][5],cases[i][6])==0: ans=0 else : x=calc(cases[i][4],cases[i][5],cases[i][6]) y=calc(cases[i][2],cases[i][3],x) if cases[i][1]=='/' and y==0: ans=0 else: x=calc(cases[i][4],cases[i][5],cases[i][6]) y=calc(cases[i][2],cases[i][3],x) ans=calc(cases[i][0],cases[i][1],y) if ans == 24: x=calc(cases[i][4],cases[i][5],cases[i][6]) y=calc(cases[i][2],cases[i][3],x) ans=calc(cases[i][0],cases[i][1],y) print(str(cf),'=',int(ans)) break if ans!= 24: print('No Solutions')
# 6330319721 (17.82) 168 (2021-02-22 15:14) def calc(num1, op, num2): r=0 if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a=nums.split() x=0 cases = generate_all_combinations(a, '+-*/' ) for ans in cases: #( ( a + b ) + c ) + d re1=calc(int(ans[0]),ans[1],int(ans[2])) re2=calc(re1,ans[3],int(ans[4])) total1=calc(re2,ans[5],int(ans[6])) #( a + ( b + c ) ) + d re3=calc(int(ans[2]),ans[3],int(ans[4])) re4=calc(int(ans[0]),ans[1],re3) total2=calc(re4,ans[5],int(ans[6])) #( a + b ) + ( c + d ) re5=calc(int(ans[0]),ans[1],int(ans[2])) re6=calc(int(ans[4]),ans[5],int(ans[6])) total3=calc(re5,ans[3],re6) #a + ( ( b + c ) + d ) re7=calc(int(ans[2]),ans[3],int(ans[4])) re8=calc(re7,ans[5],int(ans[6])) total4=calc(int(ans[0]),ans[1],re8) #a + ( b + ( c + d ) ) re9=calc(int(ans[4]),ans[5],int(ans[6])) re10=calc(int(ans[2]),ans[3],re9) total5=calc(int(ans[0]),ans[1],re10) if total1==24: print('( ( '+str(ans[0])+' '+str(ans[1])+' '+str(ans[2])+' ) '+str(ans[3])+' '+str(ans[4])+' '+str(ans[5])+' '+str(ans[6])+' )'+' = 24') x+=1 break elif total2==24: print('( '+str(ans[0])+' '+str(ans[1])+' ( '+str(ans[2])+' '+str(ans[3])+' '+str(ans[4])+' ) ) '+str(ans[5])+' '+str(ans[6])+' = 24') x+=1 break elif total3==24: print('( '+str(ans[0])+' '+str(ans[1])+' '+str(ans[2])+' ) '+str(ans[3])+' '+'( '+str(ans[4])+' '+str(ans[5])+' '+str(ans[6])+' )'+' = 24') x+=1 break elif total4==24: print(str(ans[0])+' '+str(ans[1])+' ( ( '+str(ans[2])+' '+str(ans[3])+' '+str(ans[4])+' ) '+str(ans[5])+' '+str(ans[6])+' )'+' = 24') x+=1 break elif total5==24: print(str(ans[0])+' '+str(ans[1])+' ( '+str(ans[2])+' '+str(ans[3])+' ( '+str(ans[4])+' '+str(ans[5])+' '+str(ans[6])+' ) )'+' = 24') x+=1 break if x==0: print("No Solution")
# 6330320221 (20) 169 (2021-02-20 12:10) def cal(num1, op, num2): if num1 == 'error' or num2=='error': r= 'error' elif op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if float(num2)==0: r = 'error' else: r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations(nums.split(),'+-*/') # 1+2->x+3->x+4 # 2+3->1+x->x+4 # 2+3->1+2->x+x # 2+3->x+4->1+x # 3+4->2+x->1+x found=False for num1,op1,num2,op2,num3,op3,num4 in cases: case1=cal(cal(cal(num1,op1,num2),op2,num3),op3,num4) case2=cal(cal(num1,op1,cal(num2,op2,num3)),op3,num4) case3=cal(cal(num1,op1,num2),op2,cal(num3,op3,num4)) case4=cal(num1,op1,cal(cal(num2,op2,num3),op3,num4)) case5=cal(num1,op1,cal(num2,op2,cal(num3,op3,num4))) if case1==24: print('(','(',num1,op1,num2,')',op2,num3,')',op3,num4,'= 24') found=True break if case2==24: print('(',num1,op1,'(',num2,op2,num3,')',')',op3,num4,'= 24') found=True break if case3==24: print('(',num1,op1,num2,')',op2,'(',num3,op3,num4,')','= 24') found=True break if case4==24: print(num1,op1,'(','(',num2,op2,num3,')',op3,num4,')','= 24') found=True break if case5==24: print(num1,op1,'(',num2,op2,'(',num3,op3,num4,')',')','= 24') found=True break if found==False: print('No Solutions')
# 6330321921 (20) 170 (2021-02-21 14:44) def cal1(list_number): if x[1] == '+': r = x[0] + x[2] elif x[1] == '-': r = x[0] - x[2] elif x[1] == '*': r = x[0] * x[2] elif x[1] == '/': r = x[0] / x[2] if x[3] == '+': r = r + x[4] elif x[3] == '-': r = r - x[4] elif x[3] == '*': r = r * x[4] elif x[3] == '/': r = r / x[4] if x[5] == '+': r = r + x[6] elif x[5] == '-': r = r - x[6] elif x[5] == '*': r = r * x[6] elif x[5] == '/': r = r / x[6] return r #---------------------------------- def cal2(list_number): if x[3] == '+': r = x[2] + x[4] elif x[3] == '-': r = x[2] - x[4] elif x[3] == '*': r = x[2] * x[4] elif x[3] == '/': r = x[2] / x[4] if x[1] == '+': r = r + x[0] elif x[1] == '-': r = x[0] - r elif x[1] == '*': r = r * x[0] elif x[1] == '/': r = x[0] / (r+1e-99) if x[5] == '+': r = r + x[6] elif x[5] == '-': r = r - x[6] elif x[5] == '*': r = r * x[6] elif x[5] == '/': r = r / x[6] return r #------------------------------- def cal3(list_number): if x[1] == '+': r = x[0] + x[2] elif x[1] == '-': r = x[0] - x[2] elif x[1] == '*': r = x[0] * x[2] elif x[1] == '/': r = x[0] / x[2] if x[5] == '+': s = x[4] + x[6] elif x[5] == '-': s = x[4] - x[6] elif x[5] == '*': s = x[4] * x[6] elif x[5] == '/': s = x[4] / x[6] if x[3] == '+': r = r + s elif x[3] == '-': r = r - s elif x[3] == '*': r = r * s elif x[3] == '/': r = r / (s+1e-99) return r #---------------------------- def cal4(list_number): if x[3] == '+': r = x[2] + x[4] elif x[3] == '-': r = x[2] - x[4] elif x[3] == '*': r = x[2] * x[4] elif x[3] == '/': r = x[2] / x[4] if x[5] == '+': r = r + x[6] elif x[5] == '-': r = r - x[6] elif x[5] == '*': r = r * x[6] elif x[5] == '/': r = r / x[6] if x[1] == '+': r = r + x[0] elif x[1] == '-': r = x[0] - r elif x[1] == '*': r = r * x[0] elif x[1] == '/': r = x[0] / (r+1e-99) return r #--------------------------- def cal5(list_number): if x[5] == '+': r = x[4] + x[6] elif x[5] == '-': r = x[4] - x[6] elif x[5] == '*': r = x[4] * x[6] elif x[5] == '/': r = x[4] / x[6] if x[3] == '+': r = x[2] + r elif x[3] == '-': r = x[2] - r elif x[3] == '*': r = x[2] * r elif x[3] == '/': r = x[2] / (r+1e-99) if x[1] == '+': r = r + x[0] elif x[1] == '-': r = x[0] - r elif x[1] == '*': r = r * x[0] elif x[1] == '/': r = x[0] / (r+1e-99) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') s = nums.split() for i in range(len(s)): s[i] = int(s[i]) case = generate_all_combinations(s, '+-*/') for w in range(len(case)): x = case[w] if cal1(x) == 24: print('(', '(', x[0], x[1], x[2], ')', x[3], x[4], ')', x[5], x[6], '= 24') break elif cal2(x) == 24: print('(', x[0], x[1], '(', x[2], x[3], x[4], ')', ')', x[5], x[6], '= 24') break elif cal3(x) == 24: print('(', x[0], x[1], x[2], ')', x[3], '(', x[4], x[5], x[6], ')', '= 24') break elif cal4(x) == 24: print(x[0], x[1], '(', '(', x[2], x[3], x[4], ')', x[5], x[6], ')', '= 24') break elif cal5(x) == 24: print(x[0], x[1], '(', x[2], x[3], '(', x[4], x[5], x[6], ')', ')', '= 24') break if cal1(x) != 24 and \ cal2(x) != 24 and \ cal3(x) != 24 and \ cal4(x) != 24 and \ cal5(x) != 24: print('No Solutions')
# 6330322521 (16.4) 171 (2021-02-22 01:34) def calc(num1, e, num2): r = 0 if e == '+': r = num1 + num2 elif e == '-': r = num1 - num2 elif e == '*': r = num1 * num2 elif e == '/' and num2 != 0: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x=nums.split() nums=[] for a in x: a=(int(a)) nums.append(a) cases = generate_all_combinations ( nums, '+-*/' ) y=0 for e in cases: if calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6])==24: y=24 print('(',e[0],e[1],'(',e[2],e[3],e[4],')',')',e[5],e[6]) break if calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6])==24: y=24 print('(','(',e[0],e[1],e[2],')',e[3],e[4],')',e[5],e[6]) break if calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6]))==24: y=24 print('(',e[0],e[1],e[2],')',e[3],'(',e[4],e[5],e[6],')') break if calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6])))==24: y=24 print(e[0],e[1],'(',e[2],e[3],'(',e[4],e[5],e[6],')',')') break if calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6]))==24: y=24 print(e[0],e[1],'(','(',e[2],e[3],e[4],')',e[5],e[6],')') break if y !=24:print("No Solutions")
# 6330323121 (13.6) 172 (2021-02-22 23:22) def calc(num1, op, num2): r = 0 if op == '+': r = int(num1) + int(num2) elif op == '-': r = int(num1) - int(num2) elif op == '*': r = int(num1) * int(num2) elif op == '/': if int(num2) != 0: r = int(num1)/int(num2) return r def twenty4(x): if calc(calc(calc(x[0],x[1],x[2]),x[3],x[4]), x[5], x[6]) == 24: return 'y1' elif calc(calc(x[0],x[1],calc(x[2],x[3],x[4])) , x[5], x[6]) == 24: return 'y2' elif calc(calc(x[0],x[1],x[2]) ,x[3], calc(x[4],x[5],x[6])) == 24: return 'y3' elif calc(x[0],x[1],calc(calc(x[2],x[3],x[4]),x[5],x[6])) == 24: return 'y4' elif calc(x[0],x[1],calc(x[2],x[3],calc(x[4],x[5],x[6]))) == 24: return 'y5' else :return False #--------------------------------------------------------- nums = input('Enter 4 integers: ') t = nums.split() case = generate_all_combinations(t, '+-*/' ) for i in range(len(case)) : num1 = case[i][0] op1 = case[i][1] num2 = case[i][2] op2 = case[i][3] num3 = case[i][4] op3 = case[i][5] num4 = case[i][6] if i == len(case)-1 and twenty4(case[i]) == False: print('No Solutions') break elif twenty4(case[i]) == False: i += 1 continue elif twenty4(case[i]) == 'y1': print('( ( '+num1+' '+op1+' '+num2+' ) '+op2+' '+num3+' ) '+op3+' '+num4+' = 24') break elif twenty4(case[i]) == 'y2': print('( '+num1+ ' '+op1+' ( '+num2+' '+op2+' '+num3+' ) ) '+ op3+ ' '+num4+' = 24') break elif twenty4(case[i]) == 'y3': print('( '+num1+' '+op1+' '+num2+' ) '+op2+' ( '+num3+' '+op3+' '+num4+') = 24') break elif twenty4(case[i]) == 'y4': print(num1+' '+op1+' ( ( '+num2+' '+op2+' '+num3+' ) '+op3+' '+num4+' )'+' = 24') break elif twenty4(case[i]) == 'y5': print(num1+' '+op1+' ( '+num2+ ' '+op2+' ( '+num3+' '+op3+' '+num4+' ) )'+' = 24') break
# 6330324821 (20) 173 (2021-02-20 20:45) def calc(num1, operation , num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r= num1 * num2 elif operation == '/': if num2==0: r=math.inf else: r= num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') operators = '+-*/' num_list=nums.split() cases = generate_all_combinations(num_list,operators) Value=False for i in range(len(cases)): a=cases[i] if calc(calc(calc(int(a[0]),a[1],int(a[2])),a[3],int(a[4])),a[5],int(a[6]))==24: print('(','(',a[0],a[1],a[2],')',a[3],a[4],')',a[5],a[6],'=',24) Value=True break elif calc(calc(int(a[0]),a[1],calc(int(a[2]),a[3],int(a[4]))),a[5],int(a[6]))==24: print('(',a[0],a[1],'(',a[2],a[3],a[4],')',')',a[5],a[6],'=',24) Value=True break elif calc(calc(int(a[0]),a[1],int(a[2])),a[3],calc(int(a[4]),a[5],int(a[6])))==24: print('(',a[0],a[1],a[2],')',a[3],'(',a[4],a[5],a[6],')','=',24) Value=True break elif calc(int(a[0]),a[1],calc(calc(int(a[2]),a[3],int(a[4])),a[5],int(a[6])))==24: print(a[0],a[1],'(','(',a[2],a[3],a[4],')',a[5],a[6],')','=',24) Value=True break elif calc(int(a[0]),a[1],calc(int(a[2]),a[3],calc(int(a[4]),a[5],int(a[6]))))==24: print(a[0],a[1],'(',a[2],a[3],'(',a[4],a[5],a[6],')',')','=',24) Value=True break if Value==False: print('No Solutions')
# 6330325421 (20) 174 (2021-02-19 21:09) def calc(num1, op, num2): if op == '/' and num2!=0: r = num1 / num2 elif op == '*': r = num1 * num2 elif op == '-': r = num1 - num2 elif op == '+': r = num1 + num2 else:r=0 return r def FORM(num1, op, num2, op2, num3, op3, num4): r1='('+' ( '+str(num1)+' '+ op+' '+ str(num2)+' )'+ ' '+op2+' '+ str(num3)+' )'+ ' '+op3+' '+ str(num4) r2='( '+str(num1)+' '+op+' ( '+str(num2)+' '+op2+' '+str(num3)+' ) )'+' '+op3+' '+str(num4) r3='( '+str(num1)+' '+ op+' '+ str(num2)+' ) '+ op2+ ' ( '+str(num3)+' ' +op3+' '+str(num4)+' )' r4=str(num1)+' '+op+' '+'( ( '+str(num2)+' '+op2+' '+str(num3)+' )'+' '+op3+' '+str(num4)+' )' r5=str(num1)+' '+op+' ( '+str(num2)+' '+op2+' ( '+str(num3)+' '+op3+' '+str(num4)+' ) )' return [r1,r2,r3,r4,r5] def EOF(num1, op, num2, op2, num3, op3, num4): r1=calc(calc(calc(num1, op, num2), op2, num3), op3, num4) r2=calc(calc(num1, op, calc(num2, op2, num3)), op3, num4) r3=calc(calc(num1, op, num2), op2, calc(num3, op3, num4)) r4=calc(num1, op, calc(calc(num2, op2, num3), op3, num4)) r5=calc(num1, op, calc(num2, op2, calc(num3, op3, num4))) return [r1,r2,r3,r4,r5] #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums =nums.split() nums[0]=int(nums[0]) nums[1]=int(nums[1]) nums[2]=int(nums[2]) nums[3]=int(nums[3]) cases = generate_all_combinations( nums, '+-*/' ) V='' Q=False for e in range (len(cases)): if Q == True: break a=cases[e] listEOF =(EOF(a[0],a[1],a[2],a[3],a[4],a[5],a[6])) listFORM=(FORM(a[0],a[1],a[2],a[3],a[4],a[5],a[6])) for k in range (len(listEOF)): if listEOF[k]==24: print((listFORM[k]),'= 24') Q=True break V+=str(listEOF) if '24' not in V: print('No Solutions')
# 6330326021 (14) 175 (2021-02-19 17:43) def calc(num1, op, num2): if op == "+": return num1 + num2 elif op == "-": return num1 - num2 elif op == "*": return num1 * num2 elif op == "/": if num2 == 0: return 1/3 return num1 / num2 def check24(pattern): #boolean n1,n2,n3,n4 = pattern[::2] op1,op2,op3 = pattern[1::2] if calc(calc(calc(n1,op1,n2),op2,n3),op3,n4) == 24: print("( ( " + str(n1) + " " + op1 + " " + str(n2) + " ) " + op2 + " " + str(n3) + " ) " + op3 + " " + str(n4) + " = 24") return True if calc(calc(n1,op1,calc(n2,op2,n3)),op3,n4) == 24: print("( " + str(n1) + " " + op1 + " ( " + str(n2) + " " + op2 + " " + str(n3) + " ) ) " + op3 + " " + str(n4) + " = 24") return True if calc(calc(n1,op1,n2),op2,calc(n3,op3,n4)) == 24: print("( " + str(n1) + " " + op1 + " " + str(n2) + " ) " + op2 + " ( " + str(n3) + " " + op3 + " " + str(n4) + " ) = 24") return True if calc(n1,op1,calc(calc(n2,op2,n3),op3,n3)) == 24: print(str(n1)+ " "+ op1 + " ( ( " + str(n2) + " " + op2 + " " + str(n3) + " ) " + op3 + " " + str(n4) + " ) = 24") return True if calc(n1,op1,calc(n2,op2,calc(n3,op3,n4))) == 24: print(str(n1) + " " + op1 + " ( " + str(n2) + " " + op2 + " ( " + str(n3) + " " + op3 + " " + str(n4) + " ) ) = 24") return True return False #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_list = nums.split() for i in range(len(nums_list)): nums_list[i] = int(nums_list[i]) found = False cases = generate_all_combinations(nums_list, '+-*/') for patt in cases: if check24(patt): found = True break if not found: print("No Solutions")
# 6330327721 (14.8) 176 (2021-02-21 10:27) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif num2 == 0: r = 1000 elif operation == '/': r = num1 / num2 return r def cs1(no,op): x = calc(no[0],op[0],no[1]) x = calc(x,op[1],no[2]) x = calc(x,op[2],no[3]) return x def cs2(no,op): x = calc(no[1],op[1],no[2]) x = calc(no[0],op[0],x) x = calc(x,op[2],no[3]) return x def cs3(no,op): a = calc(no[0],op[0],no[1]) b = calc(no[2],op[2],no[3]) x = calc(a,op[1],b) return x def cs4(no,op): x = calc(no[1],op[1],no[2]) x = calc(x,op[2],no[3]) x = calc(no[0],op[0],x) return x def cs5(no,op): x = calc(no[2],op[2],no[3]) x = calc(no[1],op[1],x) x = calc(no[0],op[0],x) return x #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() num = ['']*len(nums) l = 0 for l in range(len(nums)): num[l]=int(nums[l]) cases = generate_all_combinations( num , '+-*/' ) l = 0 w = 0 for l in range(len(cases)): part = cases[l] no = part[0::2] op = part[1::2] if cs1(no,op)==24: print('( (',no[0],op[0] ,no[1],')',op[1],no[2] ,')',op[2],no[3]) w = 1 if w == 1: break elif cs2(no,op)==24: print('(',no[0],op[0] ,'(',no[1],op[1],no[2] ,') )',op[2],no[3]) w = 1 if w == 1: break elif cs3(no,op)==24: print('(',no[0],op[0],no[1],')',op[1],'(',no[2],op[2],no[3],')') w = 1 if w == 1: break elif cs4(no,op)==24: print(no[0],op[0] ,'( (',no[1],op[1],no[2] ,')',op[2],no[3],')') w = 1 if w == 1: break elif cs2(no,op)==24: print(no[0],op[0] ,'(',no[1],op[1],'(',no[2] ,op[2],no[3],') )') w = 1 if w == 1: break if w == 1: break if w == 0: print('No Solutions')
# 6330328321 (20) 177 (2021-02-19 14:16) def calc(num1,op,num2): if op=='+': if num1=="none" or num2=="none": r="none" else: r=float(num1)+float(num2) elif op=='-': if num1=="none" or num2=="none": r="none" else: r=float(num1)-float(num2) elif op=='*': if num1=="none" or num2=="none": r="none" else: r=float(num1)*float(num2) elif op=='/': if num1=="none" or num2=="none": r="none" elif float(num2) ==0: r="none" else: r=float(num1)/float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') list_nums = nums.split() cases=generate_all_combinations( [list_nums[0],list_nums[1],list_nums[2],list_nums[3]], '+-*/' ) pattern ="" for i in range(len(cases)): pattern1 = calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) if pattern1!="none": if(round(pattern1,2)==24): pattern = "( ( "+str(cases[i][0])+" "+str(cases[i][1])+" "+str(cases[i][2])+" ) "+\ str(cases[i][3])+" "+str(cases[i][4])+" ) "+str(cases[i][5])+" "+str(cases[i][6])+" = 24" break pattern2 = calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) if pattern2!="none": if(round(pattern2,2)==24): pattern = "( "+str(cases[i][0])+" "+str(cases[i][1])+" ( "+str(cases[i][2])+" "+\ str(cases[i][3])+" "+str(cases[i][4])+" ) ) "+str(cases[i][5])+" "+str(cases[i][6])+" = 24" break pattern3 = calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) if pattern3!="none": if(round(pattern3,2)==24): pattern = "( "+str(cases[i][0])+" "+str(cases[i][1])+" "+str(cases[i][2])+" ) "+\ str(cases[i][3])+" ( "+str(cases[i][4])+" "+str(cases[i][5])+" "+str(cases[i][6])+" ) = 24" break pattern4 = calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) if pattern4!="none": if(round(pattern4,2)==24): pattern = str(cases[i][0])+" "+str(cases[i][1])+" ( ( "+str(cases[i][2])+" "+\ str(cases[i][3])+" "+str(cases[i][4])+" ) "+str(cases[i][5])+" "+str(cases[i][6])+" ) = 24" break pattern5 = calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) if pattern5!="none": if(round(pattern5,2)==24): pattern = str(cases[i][0])+" "+str(cases[i][1])+" ( "+str(cases[i][2])+" "+\ str(cases[i][3])+" ( "+str(cases[i][4])+" "+str(cases[i][5])+" "+str(cases[i][6])+" ) ) = 24" break if pattern =="": pattern ="No Solutions" print(pattern)
# 6330329021 (20) 178 (2021-02-19 21:02) def calc(num1, operation, num2): err = 'none' if operation == '+': r = num1 + num2 if operation == '-': r = num1 - num2 if operation == '*': r = num1*num2 if operation == '/': if num2 == 0: #division by zero err = 'true' else: r = num1/num2 if err == 'true' : r = 'err' return r def form1(t): #((012)34)56 x = calc(t[0],t[1],t[2]) if x != 'err': x = calc(x,t[3],t[4]) if x != 'err': x = calc(x,t[5],t[6]) return x def form2(t): #(01(234))56 x = calc(t[2],t[3],t[4]) if x != 'err': x = calc(t[0],t[1],x) if x != 'err': x = calc(x,t[5],t[6]) return x def form3(t): #(012)3(456) y = 'blank' z = 'blank' x = calc(t[0],t[1],t[2]) if x != 'err': y = calc(t[4],t[5],t[6]) if y != 'err': z = calc(x,t[3],y) return z def form4(t): #01((234)56) x = calc(t[2],t[3],t[4]) if x != 'err': x = calc(x,t[5],t[6]) if x != 'err': x = calc(t[0],t[1],x) return x def form5(t): #01(23(456)) x = calc(t[4],t[5],t[6]) if x != 'err': x = calc(t[2],t[3],x) if x != 'err': x = calc(t[0],t[1],x) return x #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() num_list = [0]*len(nums) for i in range(len(nums)): num_list[i]=int(nums[i]) ... cases = generate_all_combinations( num_list , '+-*/' ) ... f = 'none' for e in cases: if form1(e) != 'err': if round(form1(e),5) == 24: f = '1' break if form2(e) != 'err': if round(form2(e),5) == 24: f = '2' break if form3(e) != 'err': if round(form3(e),5) == 24: f = '3' break if form4(e) != 'err': if round(form4(e),5) == 24: f = '4' break if form5(e) != 'err': if round(form5(e),5) == 24: f = '5' break if f == '1': print('(','(',e[0],e[1],e[2],')',e[3],e[4],')',e[5],e[6],'=',24) if f == '2': print('(',e[0],e[1],'(',e[2],e[3],e[4],')',')',e[5],e[6],'=',24) if f == '3': print('(',e[0],e[1],e[2],')',e[3],'(',e[4],e[5],e[6],')','=',24) if f == '4': print(e[0],e[1],'(','(',e[2],e[3],e[4],')',e[5],e[6],')','=',24) if f == '5': print(e[0],e[1],'(',e[2],e[3],'(',e[4],e[5],e[6],')',')','=',24) if f == 'none': print('No Solutions')
# 6330330521 (16.4) 179 (2021-02-21 01:43) def cal(num1 , operation, num2): if operation == '+': r = float(num1) + float(num2) elif operation == '-': r = float(num1) - float(num2) elif operation == '*': r = float(num1) * float(num2) elif operation == '/': if float(num2)==0: r=9999999 else: r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) i = 0 for i in range(len(cases)): x = cases[i] if cal(cal(cal(x[0],x[1],x[2]),x[3],x[4]),x[5],x[6]) == 24.0: print('( ( '+x[0]+' '+x[1]+' '+x[2]+' ) '+x[3]+' '+x[4]+' ) '+x[5]+' '+x[6]) break elif cal(cal(x[0],x[1],x[2]),x[3],cal(x[4],x[5],x[6])) == 24.0: print('('+' '+x[0]+' '+x[1]+' '+x[2]+' '+')'+' '+x[3]+' '+'('+' '+x[4]+' '+x[5]+' '+x[6]+' '+')') break elif cal(cal(x[0],x[1],cal(x[2],x[3],x[4])),x[5],x[6]) == 24.0: print('('+' '+x[0]+' '+x[1]+' '+'('+' '+x[2]+' '+x[3]+' '+x[4]+' '+') )'+' '+x[5]+' '+x[6]) break elif cal(x[0],x[1],cal(cal(x[2],x[3],x[4]),x[5],x[6])) == 24.0: print(x[0]+' '+x[1]+' '+'( ('+' '+x[2]+' '+x[3]+' '+x[4]+' '+')'+' '+x[5]+' '+x[6]+' '+')') break elif cal(x[0],x[1],cal(x[2],x[3],cal(x[4],x[5],x[6]))) == 24.0: print(x[0]+' '+x[1]+' '+'('+' '+x[2]+' '+x[3]+' '+'('+' '+x[4]+' '+x[5]+' '+x[6]+' '+') )') break if i==len(cases)-1: print('No Solutions')
# 6330331121 (18) 180 (2021-02-22 01:39) def calc(num1, op, num2): if (num1 != "NOOOOO") and (num2 != "NOOOOO"): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0: r = num1 / num2 else: r = "NOOOOO" else: r = "NOOOOO" return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') numslist = [] nums = nums.split() for c in nums: numslist += [int(c)] cases = generate_all_combinations( numslist, '+-*/' ) erk = "2" for c in cases: num1 = c[0] num2 = c[2] num3 = c[4] num4 = c[6] op1 = c[1] op2 = c[3] op3 = c[5] a = calc(num1, op1, num2) b = calc(a, op2, num3) c = calc(b, op3, num4) if c == 24: print("(", "(", num1, op1, num2, ")", op2, num3, ")", op3, num4, "= 24") erk = "1" break a = calc(num2, op2, num3) b = calc(num1, op1, a) c = calc(b, op3, num4) if c == 24: print("(", num1, op1, "(", num2, op2, num3, ")", ")", op3, num4, "= 24") erk = "1" break a = calc(num1, op1, num2) b = calc(num3, op3, num4) c = calc(a, op2, b) if c == 24: print("(", num1, op1, num2, ")", op2, "(", num3, op3, num4, ")", "= 24") erk = "1" break a = calc(num3, op3, num4) b = calc(num2, op2, a) c = calc(num1, op1, b) if c == 24: print(num1, op1, "(", num2, op2, "(", num3, op3, num4, ")", ")", "= 24") erk = "1" break a = calc(num3, op3, num4) b = calc(num2, op2, a) c = calc(num1, op1, b) if c == 24: print(num1, op1, "(", num2, op2, "(", num3, op3, num4, ")", ")", "= 24") erk = "1" break if erk == "2": print("No Solutions")
# 6330332821 (20) 181 (2021-02-22 02:18) def calc(num1, operation, num2): error = 'none' if operation == '+': r = num1 + num2 if operation== '-': r = num1 - num2 if operation == '*': r = num1*num2 if operation == '/': if num2 == 0: error = 'true' else: r = num1/num2 if error == 'true': r = 'error' return r def form1(a): #((012)34)56 x = calc(a[0],a[1],a[2]) if x != 'error': x = calc(x,a[3],a[4]) if x != 'error': x = calc(x,a[5],a[6]) return x def form2(a): #(01(234))56 x = calc(a[2],a[3],a[4]) if x != 'error': x = calc(a[0],a[1],x) if x != 'error': x = calc(x,a[5],a[6]) return x def form3(a): #(012)3(456) z = 'b' y = 'b' x = calc(a[0],a[1],a[2]) if x != 'error': z = calc(a[4],a[5],a[6]) if z != 'error': y = calc(x,a[3],z) return y def form4(a): #01((234)56) x = calc(a[2],a[3],a[4]) if x != 'error': x = calc(x,a[5],a[6]) if x != 'error': x = calc(a[0],a[1],x) return x def form5(a): #01(23(456)) x = calc(a[4],a[5],a[6]) if x != 'error': x = calc(a[2],a[3],x) if x != 'error': x = calc(a[0],a[1],x) return x #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() num_list = [0]*len(nums) for i in range(len(nums)): num_list[i]=int(nums[i]) ... ... cases = generate_all_combinations(num_list, '+-*/') ... d = 'none' for c in cases: if form1(c) != 'error': if round(form1(c),5) == 24: d = '1' break if form2(c) != 'error': if round(form2(c),5) == 24: d = '2' break if form3(c) != 'error': if round(form3(c),5) == 24: d = '3' break if form4(c) != 'error': if round(form4(c),5) == 24: d = '4' break if form5(c) != 'error': if round(form5(c),5) == 24: d = '5' break if d == '1': print('(','(',c[0],c[1],c[2],')',c[3],c[4],')',c[5],c[6],'=',24) if d == '2': print('(',c[0],c[1],'(',c[2],c[3],c[4],')',')',c[5],c[6],'=',24) if d == '3': print('(',c[0],c[1],c[2],')',c[3],'(',c[4],c[5],c[6],')','=',24) if d == '4': print(c[0],c[1],'(','(',c[2],c[3],c[4],')',c[5],c[6],')','=',24) if d == '5': print(c[0],c[1],'(',c[2],c[3],'(',c[4],c[5],c[6],')',')','=',24) if d == 'none': print('No Solutions')
# 6330333421 (20) 182 (2021-02-21 16:11) def calc(num1,op,num2): if 'DEVIDE_BY_ZERO' in [num1, num2]: return 'DEVIDE_BY_ZERO' if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/': if num2==0: return 'DEVIDE_BY_ZERO' r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=[int(e) for e in nums.strip().split()] cases = generate_all_combinations( nums, '+-*/' ) is_found=False for case in cases: cal_case1='( ( {} {} {} ) {} {} ) {} {}'.format(case[0],case[1],case[2],case[3],case[4],case[5],case[6]) case1_1=calc(case[0],case[1],case[2]) case1_2=calc(case1_1,case[3],case[4]) case1_3=calc(case1_2,case[5],case[6]) if case1_3==24: print(cal_case1,'=','24') is_found=True break cal_case2='( {} {} ( {} {} {} ) ) {} {}'.format(case[0],case[1],case[2],case[3],case[4],case[5],case[6]) case2_1=calc(case[2],case[3],case[4]) case2_2=calc(case[0],case[1],case2_1) case2_3=calc(case2_2,case[5],case[6]) if case2_3==24: print(cal_case2,'=','24') is_found=True break cal_case3='( {} {} {} ) {} ( {} {} {} )'.format(case[0],case[1],case[2],case[3],case[4],case[5],case[6]) case3_1=calc(case[0],case[1],case[2]) case3_2=calc(case[4],case[5],case[6]) case3_3=calc(case3_1,case[3],case3_2) if case3_3==24: print(cal_case3,'=','24') is_found=True break cal_case4='{} {} ( ( {} {} {} ) {} {} )'.format(case[0],case[1],case[2],case[3],case[4],case[5],case[6]) case4_1=calc(case[2],case[3],case[4]) case4_2=calc(case4_1,case[5],case[6]) case4_3=calc(case[0],case[1],case4_2) if case4_3==24: print(cal_case4,'=','24') is_found=True break cal_case5 ='{} {} ( {} {} ( {} {} {} ) )'.format(case[0],case[1],case[2],case[3],case[4],case[5],case[6]) case5_1=calc(case[4],case[5],case[6]) case5_2=calc(case[2],case[3],case5_1) case5_3=calc(case[0],case[1],case5_2) if case5_3==24: print(cal_case5,'=','24') is_found=True break if not is_found: print('No Solutions')
# 6330334021 (20) 183 (2021-02-20 12:33) def calc(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '/': if float(num2) == 0: r = 10**10 + 9876543210 else: r = float(num1) / float(num2) elif op == '*': r = float(num1) * float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') no = nums.split() ans = "No Solutions" cases = generate_all_combinations(no, '+-*/') for e in cases: if 23.9999999999 <= calc(calc(calc(e[0], e[1], e[2]), e[3], e[4]), e[5], e[6]) <= 24.0000000001: ans = "( ( " + e[0] + " " + e[1] + " " + e[2] + " ) " + e[3] + " " + e[4] + " ) " + e[5] + " " + e[6] + " = 24" break if 23.9999999999 <= calc(calc(e[0], e[1], calc(e[2], e[3], e[4])), e[5], e[6]) <= 24.0000000001: ans = "( " + e[0] + " " + e[1] + " ( " + e[2] + " " + e[3] + " " + e[4] + " ) ) " + e[5] + " " + e[6] + " = 24" break if 23.9999999999 <= calc(calc(e[0], e[1], e[2]), e[3], calc(e[4], e[5], e[6])) <= 24.0000000001: ans = "( " + e[0] + " " + e[1] + " " + e[2] + " ) " + e[3] + " ( " + e[4] + " " + e[5] + " " + e[6] + " )" + " = 24 " break if 23.9999999999 <= calc(e[0], e[1], calc(calc(e[2], e[3], e[4]), e[5], e[6])) <= 24.0000000001: ans = e[0] + " " + e[1] + " ( ( " + e[2] + " " + e[3] + " " + e[4] + " ) " + e[5] + " " + e[6] + " )" + " = 24 " break if 23.9999999999 <= calc(e[0], e[1], calc(e[2], e[3], calc(e[4], e[5], e[6]))) <= 24.0000000001: ans = e[0] + " " + e[1] + " ( " + e[2] + " " + e[3] + " ( " + e[4] + " " + e[5] + " " + e[6] + " ) ) " + " = 24 " break print(ans)
# 6330335721 (20) 184 (2021-02-21 00:09) def calc(num1, op, num2): num1 = float(num1);num2 = float(num2) if op == '+': r = num1 + num2 elif op == "-": r = num1 - num2 elif op == "*": r = num1* num2 elif op == "/": try: return num1 / num2 except ZeroDivisionError: return math.inf return r def numlist(x): x = x.split() return x #--------------------------------------------------------- nums = input('Enter 4 integers: ') k=0 cases = generate_all_combinations(numlist(nums), '+-*/' ) for i in range(len(cases)): r =calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) if r == 24:#((5+3)*2)-1 print( "( (",str(cases[i][0]),cases[i][1],cases[i][2],")",cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],"= 24") k=1 break r = calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) if r == 24 :#(5+(3*2))-1 print("(",cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],cases[i][4],")",")",cases[i][5],cases[i][6],"= 24") k=1 break r =calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) if r == 24 :#(5+3)*(2-1) print("(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")","= 24") k=1 break r = calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) if r == 24 :#5+((3*2)–1) print(cases[i][0],cases[i][1],"(","(",cases[i][2],cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],")","= 24") k=1 break r = calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) if r == 24 :#5+(3*(2–1)) print(cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")",")","= 24") k=1 break if k == 0: print("No Solutions")
# 6330336321 (20) 185 (2021-02-20 00:44) # --------------------------------------------------------- def calc(num1, oper, num2): if oper == '+': result = num1 + num2 elif oper == '-': result = num1 - num2 elif oper == '*': result = num1 * num2 elif oper == '/': if num2 == math.inf: result = math.inf if num2 != 0: result = num1 / num2 else: result = math.inf return result # --------------------------------------------------------- correct = False nums = input('Enter 4 integers: ') numbs = [int(e) for e in nums.split()] cases = generate_all_combinations(numbs, '+-*/') # print(nums) # print(str(cases) + "\n") a = [0, '', 0, '', 0, '', 0] for a in cases: # a = cases[i] re1 = calc(calc(calc(a[0], a[1], a[2]), a[3], a[4]), a[5], a[6]) re2 = calc(calc(a[0], a[1], calc(a[2], a[3], a[4])), a[5], a[6]) re3 = calc(calc(a[0], a[1], a[2]), a[3], calc(a[4], a[5], a[6])) re4 = calc(a[0], a[1], calc(calc(a[2], a[3], a[4]), a[5], a[6])) re5 = calc(a[0], a[1], calc(a[2], a[3], calc(a[4], a[5], a[6]))) if re1 == 24: print('( (', a[0], a[1], a[2], ')', a[3], a[4], ')', a[5], a[6], '= 24') correct = True break elif re2 == 24: print('(', a[0], a[1], '(', a[2], a[3], a[4], ') )', a[5], a[6], '= 24') correct = True break elif re3 == 24: print('(', a[0], a[1], a[2], ')', a[3], '(', a[4], a[5], a[6], ')', '= 24') correct = True break elif re4 == 24: print(a[0], a[1], '( (', a[2], a[3], a[4], ')', a[5], a[6], ')', '= 24') correct = True break elif re5 == 24: print(a[0], a[1], '(', a[2], a[3], '(', a[4], a[5], a[6], ') ) = 24') correct = True break if correct == False: print("No Solutions")
# 6330337021 (19.84) 186 (2021-02-22 01:18) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '*': r = num1 * num2 elif op == '-': r = num1 - num2 elif op == '/': if num2 == math.inf : r = math.inf elif num2 == 0 : r = math.inf else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') p = True cases = generate_all_combinations([int(e) for e in nums.split()], '+-*/' ) for c in cases : ans1 = calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) ans2 = calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) ans3 = calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])) ans4 = calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) ans5 = calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) if ans1 == 24 : print("(","(",c[0],c[1],c[2],")",c[3],c[4],")",c[5],c[6],"=",int(ans1)) p = False break elif ans2 == 24: print("(",c[0],c[1],"(",c[2],c[3],c[4],")",")",c[5],c[6],"=",int(ans2)) p = False break elif ans3 == 24: print("(",c[0],c[1],c[2],")",c[3],"(",c[4],c[5],c[6],")","=",int(ans3)) p = False break elif ans4 == 24: print(c[0],c[1],"(","(",c[2],c[3],c[4],")",c[5],c[6],")","=",int(ans4)) p = False break elif ans5 == 24: print(c[0],c[1],"(",c[2],c[3],"(",c[4],c[5],c[6],")",")","=",int(ans5)) p = False break if p : print("Not Solutions")
# 6330338621 (18) 187 (2021-02-19 14:46) def calc(a,b,c): if b == '+': r = a + c elif b == '-': r = a - c elif b == '*': r = a * c elif c == 0: return False elif b == '/': r = a / c return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() for i in range(len(nums)): nums[i] = int(nums[i]) cases = generate_all_combinations( nums , '+-*/' ) v = False for n in range(len(cases)): n1 = cases[n][0] n2 = cases[n][2] n3 = cases[n][4] n4 = cases[n][6] o1 = cases[n][1] o2 = cases[n][3] o3 = cases[n][5] x = calc(n1,o1,n2) y = calc(x,o2,n3) z = calc(y,o3,n4) if z == 24: print( '( ' + '( ' + str(n1) + ' ' + str(o1) + ' ' + str(n2) + ' ) '\ + str(o2) + ' ' + str(n3)+ ' ) ' + str(o3) + ' ' + str(n4) + ' = 24') v = True break else: x = calc(n2,o2,n3) y = calc(n1,o1,x) z = calc(y,o3,n4) if z == 24: print('( ' + str(n1) + ' ' + str(o1) + ' ' + '( ' + str(n2) + ' ' \ + str(o2) + ' ' + str(n3)+ ' ) ' + ') ' + str(o3) + ' ' + str(n4) + ' = 24' ) v = True break else: x = calc(n1,o1,n2) y = calc(n3,o3,n4) z = calc(x,o2,y) if z == 24: print( '( ' + str(n1) + ' ' + str(o1) + ' ' + str(n2) + ' ) ' \ + str(o2) + ' ( ' + str(n3) + ' ' + str(o3) + ' ' + str(n4) + ' ) = 24' ) v = True break else: x = calc(n2,o2,n3) y = calc(x,o3,n4) z = calc(n1,o1,y) if z == 24: print( str(n1) + ' ' + str(o1) + ' ( ( ' + str(n2) + ' ' \ + str(o2) + ' ' + str(n3) + ' ) ' + str(o3) + ' ' + str(n4) + ' ) = 24' ) v = True break else: x = calc(n3,o3,n4) y = calc(n2,o2,x) z = calc(n1,o2,y) if z == 24: print( str(n1) + ' ' + str(o1) + ' ( ' + str(n2) + ' ' \ + str(o2) +' ( ' + str(n3) + ' ' + str(o3) + ' ' + str(n4) + ' ) = 24' ) v = True break if (v): pass else: print('No Solutions')
# 6330339221 (20) 188 (2021-02-22 03:17) #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... nums = nums.split() def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-' : r = num1 - num2 elif op == '/' : if num2 == 0 : r = num1*num2 else : r = num1/num2 elif op == '*' : r = num1*num2 return r ... cases = generate_all_combinations( nums, '+-*/' ) ... x = 0 while x < len(cases): solution = calc(calc(calc(int(cases[x][0]),cases[x][1],int(cases[x][2])),cases[x][3],int(cases[x][4])),cases[x][5],int(cases[x][6])) if solution == 24 : process = '( ( %s %s %s ) %s %s ) %s %s'% (cases[x][0],cases[x][1],cases[x][2],cases[x][3],cases[x][4],cases[x][5],cases[x][6]) break solution = calc(calc(int(cases[x][0]),cases[x][1],calc(int(cases[x][2]),cases[x][3],int(cases[x][4]))),cases[x][5],int(cases[x][6])) if solution == 24 : process = '( %s %s ( %s %s %s ) ) %s %s'% (cases[x][0],cases[x][1],cases[x][2],cases[x][3],cases[x][4],cases[x][5],cases[x][6]) break solution = calc(calc(int(cases[x][0]),cases[x][1],int(cases[x][2])),cases[x][3],calc(int(cases[x][4]),cases[x][5],int(cases[x][6]))) if solution == 24 : process = '( %s %s %s ) %s ( %s %s %s )'% (cases[x][0],cases[x][1],cases[x][2],cases[x][3],cases[x][4],cases[x][5],cases[x][6]) break solution = calc(int(cases[x][0]),cases[x][1],calc(calc(int(cases[x][2]),cases[x][3],int(cases[x][4])),cases[x][5],int(cases[x][6]))) if solution == 24 : process = '%s %s ( ( %s %s %s ) %s %s )'% (cases[x][0],cases[x][1],cases[x][2],cases[x][3],cases[x][4],cases[x][5],cases[x][6]) break solution = calc(int(cases[x][0]),cases[x][1],calc(int(cases[x][2]),cases[x][3],calc(int(cases[x][4]),cases[x][5],int(cases[x][6])))) if solution == 24 : process = '%s %s ( %s %s ( %s %s %s ) )'% (cases[x][0],cases[x][1],cases[x][2],cases[x][3],cases[x][4],cases[x][5],cases[x][6]) break x = x+1 if solution != 24 : print('No Solutions') else : print(process,'=',int(solution))
# 6330340821 (18) 189 (2021-02-20 00:39) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 == 0: r = 123456789 else: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() nums[0]=int(nums[0]) nums[1]=int(nums[1]) nums[2]=int(nums[2]) nums[3]=int(nums[3]) cases = generate_all_combinations( nums, '+-*/' ) for i in cases : x=calc(i[0],i[1],i[2]) x=calc(x,i[3],i[4]) x=calc(x,i[5],i[6]) if x==24 : print("( (", i[0], i[1], i[2], ")", i[3], i[4], ")", i[5], i[6], "= 24") break x=calc(i[2],i[3],i[4]) x=calc(i[0],i[1],x) x=calc(x,i[5],i[6]) if x==24 : print("(", i[0], i[1], "(", i[2], i[3], i[4], ") )", i[5], i[6], "= 24") break x=calc(i[0],i[1],i[2]) y=calc(i[4],i[5],i[6]) x=calc(x,i[3],y) if x==24: print("(", i[0], i[1], i[2], ")", i[3], "(", i[4], i[5], i[6], ") = 24") break x=calc(i[2],i[3],i[4]) x=calc(x,i[5],i[6]) x=calc(i[0],i[1],x) if x==24: print(i[0], i[1], "( (", i[2], [3], i[4], ")" + i[5] + i[6] + ") = 24") break x=calc(i[4],i[5],i[6]) x=calc(i[2],i[3],x) x=calc(i[0],i[1],x) if x==24: print(i[0], i[1], "(", i[2], i[3], "(", i[4], i[5], i[6], ") ) = 24") break else: print("No Solutions")
# 6330341421 (20) 190 (2021-02-20 13:58) i = 0 def calc1(n): n1 = float(n[0]) n2 = float(n[2]) n3 = float(n[4]) n4 = float(n[6]) op1 = str(n[1]) op2 = str(n[3]) op3 = str(n[5]) if op1 == '+': r1 = n1 + n2 elif op1 == '-': r1 = n1 - n2 elif op1 == '*': r1 = n1 * n2 elif op1 == '/': if n2!=0: r1 = n1 / n2 else: return 0 if op2 == '+': r2 = r1 + n3 elif op2 == '-': r2 = r1 - n3 elif op2 == '*': r2 = r1 * n3 elif op2 == '/': if n3!=0: r2 = r1 / n3 else: return 0 if op3 == '+': r3 = r2 + n4 elif op3 == '-': r3 = r2 - n4 elif op3 == '*': r3 = r2 * n4 elif op3 == '/': if n4!=0: r3 = r2 / n4 else: return 0 return r3 #222222222222222222222222222222222222222222222 def calc2(n): n1 = float(n[0]) n2 = float(n[2]) n3 = float(n[4]) n4 = float(n[6]) op1 = str(n[1]) op2 = str(n[3]) op3 = str(n[5]) if op2 == '+': r2 = n2 + n3 elif op2 == '-': r2 = n2 - n3 elif op2 == '*': r2 = n2 * n3 elif op2 == '/': if n3!=0: r2 = n2 / n3 else: return 0 if op1 == '+': r1 = n1 + r2 elif op1 == '-': r1 = n1 - r2 elif op1 == '*': r1 = n1 * r2 elif op1 == '/': if r2!=0: r1 = n1 / r2 else: return 0 if op3 == '+': r3 = r1 + n4 elif op3 == '-': r3 = r1 - n4 elif op3 == '*': r3 = r1 * n4 elif op3 == '/': if n4!=0: r3 = r1 / n4 else: return 0 return r3 #3333333333333333333333333333333333333333 def calc3(n): n1 = float(n[0]) n2 = float(n[2]) n3 = float(n[4]) n4 = float(n[6]) op1 = str(n[1]) op2 = str(n[3]) op3 = str(n[5]) if op1 == '+': r1 = n1 + n2 elif op1 == '-': r1 = n1 - n2 elif op1 == '*': r1 = n1 * n2 elif op1 == '/': if n2!=0: r1 = n1 / n2 else: return 0 if op3 == '+': r3 = n3 + n4 elif op3 == '-': r3 = n3 - n4 elif op3 == '*': r3 = n3 * n4 elif op3 == '/': if n4!=0: r3 = n3 / n4 else: return 0 if op2 == '+': r2 = r1 + r3 elif op2 == '-': r2 = r1 - r3 elif op2 == '*': r2 = r1 * r3 elif op2 == '/': if r3!=0: r2 = r1 / r3 else: return 0 return r2 #444444444444444444444444444444444444444 def calc4(n): n1 = float(n[0]) n2 = float(n[2]) n3 = float(n[4]) n4 = float(n[6]) op1 = str(n[1]) op2 = str(n[3]) op3 = str(n[5]) if op2 == '+': r2 = n2 + n3 elif op2 == '-': r2 = n2 - n3 elif op2 == '*': r2 = n2 * n3 elif op2 == '/': if n3!=0: r2 = n2 / n3 else: return 0 if op3 == '+': r3 = r2 + n4 elif op3 == '-': r3 = r2 - n4 elif op3 == '*': r3 = r2 * n4 elif op3 == '/': if n4!=0: r3 = r2 / n4 else: return 0 if op1 == '+': r1 = n1 + r3 elif op1 == '-': r1 = n1 - r3 elif op1 == '*': r1 = n1 * r3 elif op1 == '/': if r3!=0: r1 = n1 / r3 else: return 0 return r1 #555555555555555555555555555555555555555 def calc5(n): n1 = float(n[0]) n2 = float(n[2]) n3 = float(n[4]) n4 = float(n[6]) op1 = str(n[1]) op2 = str(n[3]) op3 = str(n[5]) if op3 == '+': r3 = float(n3) + n4 elif op3 == '-': r3 = n3 - n4 elif op3 == '*': r3 = n3 * n4 elif op3 == '/': if n4!=0: r3 = n3 / n4 else: return 0 if op2 == '+': r2 = n2 + r3 elif op2 == '-': r2 = n2 - r3 elif op2 == '*': r2 = n2 * r3 elif op2 == '/': if r3!=0: r2 = n2 / r3 else: return 0 if op1 == '+': r1 = n1 + r2 elif op1 == '-': r1 = n1 - r2 elif op1 == '*': r1 = n1 * r2 elif op1 == '/': if r2!=0: r1 = n1 / r2 else: return 0 return r1 #--------------------------------------------------------- nums = input('Enter 4 integers: ') k = nums.split() ... ... cases = generate_all_combinations( k, '+-*/' ) ... while i in range(len(cases)): if calc1(cases[i]) == 24: print('(','(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],'= 24') break elif calc2(cases[i]) == 24: print('(',cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],cases[i][4],')',')',cases[i][5],cases[i][6],'= 24') break elif calc3(cases[i]) == 24: print('(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')','= 24') break elif calc4(cases[i]) == 24: print(cases[i][0],cases[i][1],'(','(',cases[i][2],cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],')','= 24') break elif calc5(cases[i]) == 24: print(cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')',')','= 24') break else: i+=1 if i == len(cases): print('No Solutions')
# 6330342021 (18.4) 191 (2021-02-21 17:33) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '*': r = num1 * num2 elif op == '-': r = num1 - num2 elif op == '/' : if num2 ==0: r= math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( [int(e) for e in nums.split(' ')], '+-*/' ) i=0 while i<len(cases): r = calc(calc(calc( (cases[i][0]), (cases[i][1]), (cases[i][2]) ),(cases[i][3]),(cases[i][4])),(cases[i][5]),(cases[i][6])) if r==24 : print('(', '(' +str(cases[i][0]) ,str(cases[i][1]),str(cases[i][2]),')'\ ,str(cases[i][3]), str(cases[i][4]) ,')' , str(cases[i][5]),str(cases[i][6]),'=','24') break r = calc(calc(cases[i][0],cases[i][1],calc((cases[i][2]),(cases[i][3]),(cases[i][4]))),(cases[i][5]),(cases[i][6])) if r==24 : print('(' ,str(cases[i][0]) ,str(cases[i][1]),'('+str(cases[i][2])\ ,str(cases[i][3]), str(cases[i][4]) ,')',')' , str(cases[i][5]),str(cases[i][6]),'=','24') break r = calc(calc( (cases[i][0]), (cases[i][1]), (cases[i][2]) ),(cases[i][3]),calc((cases[i][4]),(cases[i][5]),(cases[i][6]))) if r==24 : print( '(' ,str(cases[i][0]) ,str(cases[i][1]),str(cases[i][2]),')'\ ,str(cases[i][3]),'('+ str(cases[i][4]) , str(cases[i][5]),str(cases[i][6]),')','=','24') break r = calc(cases[i][0],cases[i][1],calc(calc((cases[i][2]),(cases[i][3]),(cases[i][4])),(cases[i][5]),(cases[i][6]))) if r==24 : print( str(cases[i][0]) ,str(cases[i][1]),'(','(',str(cases[i][2])\ ,str(cases[i][3]), str(cases[i][4]),')' , str(cases[i][5]),str(cases[i][6]),')','=','24') break r = calc(cases[i][0],cases[i][1],calc((cases[i][2]),(cases[i][3]),calc((cases[i][4]),(cases[i][5]),(cases[i][6])))) if r==24 : print( str(cases[i][0]) ,str(cases[i][1]),'('+str(cases[i][2])\ ,str(cases[i][3]),'('+ str(cases[i][4]) , str(cases[i][5]),str(cases[i][6]),')',')','=','24') break i+=1 if i ==len(cases): print('No Solutions')
# 6330343721 (14) 192 (2021-02-22 22:23) # Construct The Operator num % num def NN(case, num1, operator, num2): listnum = [] for n in range(0,len(case),1): a1 = case[n][num1] op = case[n][operator] a3 = case[n][num2] if op == '+': rr = a1+a3 elif op == '-': rr = a1-a3 elif op == '*': rr = a1*a3 elif op == '/': if a3 != 0: rr = a1/a3 else: rr = 999999 else: pass listnum.append(rr) return listnum # Construct the operator Num % Bracket def NB(case, operator, casese, num): listnum = [] for n in range(0, len(casese), 1): a1 = case[n] op = casese[n][operator] a3 = casese[n][num] if op == '+': rr = a1+a3 elif op == '-': rr = a1-a3 elif op == '*': rr = a1*a3 elif op == '/': if a3 != 0: rr = a1/a3 else: rr = 999999 else: pass listnum.append(rr) return listnum #Construct the operator Bracket % Bracket def BB(case, operator, casese, cases): listnum = [] for n in range(0, len(cases), 1): a1 = case[n] op = cases[n][operator] a3 = casese[n] if op == '+': rr = a1+a3 elif op == '-': rr = a1-a3 elif op == '*': rr = a1*a3 elif op == '/': if a3 != 0: rr = a1/a3 else: rr = 999999 else: pass listnum.append(rr) return listnum #--------------------------------------------------------- #Construct the input nums = input('Enter 4 integers: ') numb = nums.split() a = int(numb[0]) b = int(numb[1]) c = int(numb[2]) d = int(numb[3]) cases = generate_all_combinations( [a, b, c, d], '+-*/' ) ##Construct List of Number #--------------------------------------------------------- #----PATTERN1 ( ( 1 + 2 ) + 3 ) + 4 #--------------------------------------------------------- Left1 = NN(cases, 0, 1, 2) LeftXMIDDLE1 = NB(Left1, 3, cases, 4) ALL1 = NB(LeftXMIDDLE1, 5, cases, 6) #--------------------------------------------------------- #----PATTERN2 ( 1 + ( 2 + 3 ) ) + 4 #--------------------------------------------------------- Middle2 = NN(cases, 2, 3, 4) LeftXMIDDLE2 = NB(Middle2, 1, cases, 0) ALL2 = NB(LeftXMIDDLE2, 5,cases, 6) #--------------------------------------------------------- #----PATTERN3 ( 1 + 2 ) + ( 3 + 4 ) #--------------------------------------------------------- Left3 = NN(cases, 0, 1, 2) Right3 = NN(cases, 4, 5, 6) ALL3 = BB(Left3, 3, Right3, cases) #--------------------------------------------------------- #----PATTERN4 1 + ( ( 2 + 3 ) + 4 ) #--------------------------------------------------------- Middle4 = NN(cases, 2, 3, 4) Right4 = NB(Middle4, 5, cases, 6) ALL4 = NB(Right4, 1, cases, 0) #--------------------------------------------------------- #----PATTERN5 1 + ( 2 + ( 3 + 4 ) ) #--------------------------------------------------------- Right5 = NN(cases, 4, 5, 6) Middle5 = NB(Right5, 3, cases, 2) ALL5 = NB(Middle5, 1, cases, 0) nn = 0 if 24 in ALL1: while nn < len(ALL1): if ALL1[nn] == 24: print('( ( '+str(cases[nn][0])+' '+str(cases[nn][1])+' '+str(cases[nn][2])+' ) '+str(cases[nn][3])+' '+str(cases[nn][4])+' ) '+str(cases[nn][5])+' '+str(cases[nn][6])+' = 24 ') break nn +=1 elif 24 in ALL2: while nn < len(ALL2): if ALL2[nn] == 24: print('( '+str(cases[nn][0])+' '+str(cases[nn][1])+' ( '+str(cases[nn][2])+' '+str(cases[nn][3])+' '+str(cases[nn][4])+' ) ) '+str(cases[nn][5])+' '+str(cases[nn][6])+' = 24 ') break nn +=1 elif 24 in ALL3: while nn < len(ALL3): if ALL3[nn] == 24: print('( '+str(cases[nn][0])+' '+str(cases[nn][1])+' '+str(cases[nn][2])+' ) '+str(cases[nn][3])+' ( '+str(cases[nn][4])+' '+str(cases[nn][5])+' '+str(cases[nn][6])+' )'+' = 24 ') break nn +=1 elif 24 in ALL4: while nn < len(ALL4): if ALL5[nn] == 24: print(str(cases[nn][0])+' '+str(cases[nn][1])+' ( ( '+str(cases[nn][2])+' '+str(cases[nn][3])+' '+str(cases[nn][4])+' ) '+str(cases[nn][5])+' '+str(cases[nn][6])+' )'+' = 24 ') break nn +=1 elif -24 in ALL5: while nn < len(ALL5): if int(ALL5[nn]) == -24.0: print(str(cases[nn][0])+' '+str(cases[nn][1])+' ( '+str(cases[nn][2])+' '+str(cases[nn][3])+' ( '+str(cases[nn][4])+' '+str(cases[nn][5])+' '+str(cases[nn][6])+' ) )'+' = 24 ') break nn +=1 else: print("No Solutions")
# 6330345021 (20) 193 (2021-02-18 14:25) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_ = nums.split() for i in range(4): nums_[i] = int(nums_[i]) cases = generate_all_combinations( nums_ , '+-*/' ) for k in range(0,len(cases)): a = cases[k] if not (a[1] == "/" and a[2] == 0): f1 = calc(a[0],a[1],a[2]) if not ((a[1] == "/" and a[2] == 0) or (a[3] == "/" and a[4] == 0)): f2 = calc(f1,a[3],a[4]) if not ((a[1] == "/" and a[2] == 0) or (a[3] == "/" and a[4] == 0) or (a[5] == "/" and a[6] == 0)): first = calc(f2,a[5],a[6]) #------------------------------ if not (a[3] == "/" and a[4] == 0): s1 = calc(a[2],a[3],a[4]) if not ((a[3] == "/" and a[4] == 0) or (a[1] == "/" and s1 == 0)): s2 = calc(a[0],a[1],s1) if not ((a[3] == "/" and a[4] == 0) or (a[1] == "/" and s1 == 0) or (a[5] == "/" and a[6] == 0)): second = calc(s2,a[5],a[6]) #------------------------------ if not (a[1] == "/" and a[2] == 0): t1 = calc(a[0],a[1],a[2]) if not ((a[1] == "/" and a[2] == 0) or (a[5] == "/" and a[6] == 0)): t2 = calc(a[4],a[5],a[6]) if not ((a[1] == "/" and a[2] == 0) or (a[5] == "/" and a[6] == 0) or (a[3] == "/" and t2 == 0)): third = calc(t1,a[3],t2) #------------------------------ if not (a[3] == "/" and a[4] == 0): fo1 = calc(a[2],a[3],a[4]) if not ((a[3] == "/" and a[4] == 0) or (a[5] == "/" and a[6] == 0)): fo2 = calc(fo1,a[5],a[6]) if not ((a[3] == "/" and a[4] == 0) or (a[5] == "/" and a[6] == 0) or (a[1] == "/" and fo2 == 0)): fourth = calc(a[0],a[1],fo2) #------------------------------ if not (a[5] == "/" and a[6] == 0): fif1 = calc(a[4],a[5],a[6]) if not ((a[5] == "/" and a[6] == 0) or (a[3] == "/" and fif1 == 0)): fif2 = calc(a[2],a[3],fif1) if not ((a[5] == "/" and a[6] == 0) or (a[3] == "/" and fif1 == 0) or (a[1] == "/" and fif2 == 0)): fifth = calc(a[0],a[1],fif2) #------------------------------ if first == 24: print("(","(",a[0],a[1],a[2],")",a[3],a[4],")",a[5],a[6],"=","24") elif second == 24: print("(",a[0],a[1],"(",a[2],a[3],a[4],")",")",a[5],a[6],"=","24") elif third == 24: print("(",a[0],a[1],a[2],")",a[3],"(",a[4],a[5],a[6],")","=","24") elif fourth == 24: print(a[0],a[1],"(","(",a[2],a[3],a[4],")",a[5],a[6],")","=","24") elif fifth == 24: print(a[0],a[1],"(",a[2],a[3],"(",a[4],a[5],a[6],")",")","=","24") if first == 24 or second == 24 or third == 24 or fourth == 24 or fifth == 24: break if k == len(cases)-1: print("No Solutions") ...
# 6330346621 (20) 194 (2021-02-20 16:15) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() num_list=[] ans_=[] for e in nums: num_list.append(int(e)) cases = generate_all_combinations( num_list , '+-*/' ) for i in range(len(cases)): a=cases[i] for j in range(5): if j == 0: try: o1=calc(cases[i][0],cases[i][1],cases[i][2]) o2=calc(o1,cases[i][3],cases[i][4]) r=calc(o2,cases[i][5],cases[i][6]) except:pass elif j == 1: try: o1=calc(cases[i][2],cases[i][3],cases[i][4]) o2=calc(cases[i][0],cases[i][1],o1) r=calc(o2,cases[i][5],cases[i][6]) except:pass elif j == 2: try: o1=calc(cases[i][0],cases[i][1],cases[i][2]) o2=calc(cases[i][4],cases[i][5],cases[i][6]) r=calc(o1,cases[i][3],o2) except:pass elif j == 3: try: o1=calc(cases[i][2],cases[i][3],cases[i][4]) o2=calc(o1,cases[i][5],cases[i][6]) r=calc(cases[i][0],cases[i][1],o2) except:pass elif j == 4: try: o1=calc(cases[i][4],cases[i][5],cases[i][6]) o2=calc(cases[i][2],cases[i][3],o1) r=calc(cases[i][0],cases[i][1],o2) except:pass if r == 24: ans=cases[i] break if r == 24:break if r == 24: if j == 0: ans=['(','(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],cases[i][4],')',cases[i][5],cases[i][6]] if j == 1: ans=['(',cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],cases[i][4],')',')',cases[i][5],cases[i][6]] if j == 2: ans=['(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')'] if j == 3: ans=[cases[i][0],cases[i][1],'(','(',cases[i][2],cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],')'] if j == 4: ans=[cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')',')'] for e in ans: ans_.append(str(e)) print(' '.join(ans_),'=','24') else:print('No Solutions')
# 6330347221 (18) 195 (2021-02-21 12:10) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() d =[] n = 0 for i in range(len(nums)): d.append(int(nums[i])) cases = generate_all_combinations( d, '+-*/' ) for p in cases: if calc(calc(calc(p[0],p[1],p[2]),p[3],p[4]),p[5],p[6]) == 24: print('( (',p[0],p[1],p[2],')',p[3],p[4],')',p[5],p[6],'=','24') n += 1 break elif calc(calc(p[0],p[1],calc(p[2],p[3],p[4])),p[5],p[6]) == 24: print('(',p[0],p[1],'(',p[2],p[3],p[4],')',')',p[5],p[6],'=','24') n += 1 break elif calc(calc(p[0],p[1],p[2]),p[3],calc(p[4],p[5],p[6])) == 24: print('(',p[0],p[1],p[2],')',p[3],'(',p[4],p[5],p[6],')','=','24') n += 1 break elif calc(p[0],p[1],calc(calc(p[2],p[3],p[4]),p[5],p[6])) == 24: print(p[0],p[1],'( (',p[2],p[3],p[4],')',p[5],p[6],')','=','24') n += 1 break elif calc(p[0],p[1],calc(calc(p[2],p[3],p[4]),p[5],p[6])) == 24: print(p[0],p[1],'(',p[2],p[3],'(',p[4],p[5],p[6],') )','=','24') n += 1 break if n == 0: print('No Solutions')
# 6330348921 (20) 196 (2021-02-20 03:43) #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... ... a = nums.split() b = [0,0,0,0] op = ['+','-','*','/'] b[0] = int(a[0]) b[1] = int(a[1]) b[2] = int(a[2]) b[3] = int(a[3]) cases = generate_all_combinations( b, op ) for i in range(len(cases)): c = cases[i] num1 = c[0] op1 = c[1] num2 = c[2] op2 = c[3] num3 = c[4] op3 = c[5] num4 = c[6] # ((a b) c) d def calc1(num1,op1,num2): if op1 == '+': r = num1 + num2 elif op1 == '-': r = num1 - num2 elif op1 == '*': r = num1 * num2 elif op1 == '/' and num2 != 0: r = num1 / num2 elif num2 == 0: r = 0 return r d = calc1(num1,op1,num2) def calc2(d,op2,num3): if op2 == '+': p = d + num3 elif op2 == '-': p = d - num3 elif op2 == '*': p = d * num3 elif op2 == '/' and num3 != 0: p = d / num3 elif num3 == 0: p = 0 return p f = calc2(d,op2,num3) def calc3(f,op3,num4): if op3 == '+': w = f + num4 elif op3 == '-': w = f - num4 elif op3 == '*': w = f * num4 elif op3 == '/' and num4 != 0: w = f / num4 elif num4 == 0: w = 0 return w g = calc3(f,op3,num4) if g == 24: print('(','(',num1,op1,num2,')',op2,num3,')',op3,num4,'=','24') break # (a (b c)) d def calc4(num2,op2,num3): if op2 == '+': r = num2 + num3 elif op2 == '-': r = num2 - num3 elif op2 == '*': r = num2 * num3 elif op2 == '/' and num3 != 0: r = num2 / num3 elif num3 == 0: r = 0 return r h = calc4(num2,op2,num3) def calc5(num1,op1,h): if op1 == '+': p = num1 + h elif op1 == '-': p = num1 - h elif op1 == '*': p = num1 * h elif op1 == '/' and h != 0: p = num1 / h elif h == 0: p = 0 return p l = calc5(num1,op1,h) def calc6(l,op3,num4): if op3 == '+': w = l + num4 elif op3 == '-': w = l - num4 elif op3 == '*': w = l * num4 elif op3 == '/' and num4 != 0: w = l / num4 elif num4 == 0: w = 0 return w m = calc6(l,op3,num4) if m == 24: print('(',num1,op1,'(',num2,op2,num3,')',')',op3,num4,'=','24') break # (a b) (c d) def calc7(num1,op1,num2): if op1 == '+': r = num1 + num2 elif op1 == '-': r = num1 - num2 elif op1 == '*': r = num1 * num2 elif op1 == '/' and num2 != 0: r = num1 / num2 elif num2 == 0: r = 0 return r N = calc7(num1,op1,num2) def calc8(num3,op3,num4): if op3 == '+': p = num3 + num4 elif op3 == '-': p = num3 - num4 elif op3 == '*': p = num3 * num4 elif op3 == '/' and num4 != 0: p = num3 / num4 elif num4 == 0: p = 0 return p O = calc8(num3,op3,num4) def calc9(N,op2,O): if op2 == '+': p = N + O elif op2 == '-': p = N - O elif op2 == '*': p = N * O elif op2 == '/' and O != 0: p = N / O elif O == 0: p = 0 return p q = calc9(N,op2,O) if q == 24: print('(',num1,op1,num2,')',op2,'(',num3,op3,num4,')','=','24') break #a (b (c d)) def calc10(num3,op3,num4): if op3 == '+': r = num3 + num4 elif op3 == '-': r = num3 - num4 elif op3 == '*': r = num3 * num4 elif op3 == '/' and num4 != 0: r = num3 / num4 elif num4 == 0: r = 0 return r s = calc10(num3,op3,num4) def calc11(num2,op2,s): if op2 == '+': I = num2 + s elif op2 == '-': I = num2 - s elif op2 == '*': I = num2 * s elif op2 == '/' and s != 0: I = num2 / s elif s == 0: I = 0 return I T = calc11(num2,op2,s) def calc12(num1,op1,T): if op1 == '+': w = num1 + T elif op1 == '-': w = num1 - T elif op1 == '*': w = num1 * T elif op1 == '/' and T != 0: w = num1 / T elif T == 0: w = 0 return w u = calc12(num1,op1,T) if u == 24: print(num1,op1,'(',num2,op2,'(',num3,op3,num4,')',')','=','24') break # a ((b c) d) def calc13(num2,op2,num3): if op2 == '+': r = num2 + num3 elif op2 == '-': r = num2 - num3 elif op2 == '*': r = num2 * num3 elif op2 == '/' and num3 != 0: r = num2 / num3 elif num3 == 0: r = 0 return r v = calc13(num2,op2,num3) def calc14(v,op3,num4): if op3 == '+': p = v + num4 elif op3 == '-': p = v - num4 elif op3 == '*': p = v * num4 elif op3 == '/' and num4 != 0: p = v / num4 elif num4 == 0: p = 0 return p A = calc14(v,op3,num4) def calc15(num1,op1,A): if op1 == '+': w = num1 + A elif op1 == '-': w = num1 - A elif op1 == '*': w = num1 * A elif op1 == '/' and A != 0: w = num1 / A elif A == 0: w = 0 return w y = calc15(num1,op1,A) if y == 24: print(num1,op1,'(','(',num2,op2,num3,')',op3,num4,')','=','24') break if g != 24 and m != 24 and q != 24 and u !=24 and y != 24: print('No Solutions') ...
# 6330349521 (19.6) 197 (2021-02-22 03:05) def calc(num1, op, num2): if op == '+': r = num1+num2 elif op == '-': r = num1-num2 elif op == '*': r = num1*num2 elif op == '/': r = (num1/num2) return r def besttoget24(all_combi): # a = 0 for e in all_combi: s1 = 0 if not ((e[1]=='/' and e[2]==0) or (e[3]=='/' and e[4]==0) or (e[5]=='/' and e[6]==0)): s1 = calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6]) if s1==24: print('(','(',e[0],e[1],e[2],')',e[3],e[4],')',e[5],e[6],'= 24') e = '0' break s2 = 0 if not ((e[3]=='/' and e[4]==0) or (e[5]=='/' and e[6]==0)): if not (e[1]=='/' and calc(e[2],e[3],e[4])==0): s2 = calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6]) if s2==24: print('(',e[0],e[1],'(',e[2],e[3],e[4],')',')',e[5],e[6],'= 24') e = '0' break s3 = 0 if not ((e[1]=='/' and e[2]==0) or (e[5]=='/' and e[6]==0)): if not (e[3]=='/' and calc(e[4],e[5],e[6])==0): s3 = calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6])) if s3==24: print('(',e[0],e[1],e[2],')',e[3],'(',e[4],e[5],e[6],')','= 24') e = '0' break s4 = 0 if not ((e[3]=='/' and e[4]==0) or (e[5]=='/' and e[6]==0)): if not (e[1]=='/' and calc(calc(e[2],e[3],e[4]),e[5],e[6])==0): s4 = calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6])) if s4==24: print(e[0],e[1],'(','(',e[2],e[3],e[4],')',e[5],e[6],')','= 24') e = '0' break s5 = 0 if not (e[5]=='/' and e[6]==0): if not (e[3]=='/' and calc(e[4],e[5],e[6])==0): if not (e[1]=='/' and calc(e[2],e[3],calc(e[4],e[5],e[6]))==0): s5 = calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6]))) if s5==24: print(e[0],e[1],'(',e[2],e[3],'(',e[4],e[5],e[6],')',')','= 24') e = '0' break3 if e != '0': print('No Solutions') #--------------------------------------------------------- nums = [int(e) for e in input('Enter 4 integers: ').split()] cases = generate_all_combinations( nums, '+-*/' ) besttoget24(cases)
# 6330350021 (20) 198 (2021-02-22 19:24) def calc(num1, operation, num2): if operation == '+': r = num1+num2 elif operation == '-': r = num1-num2 elif operation == '*': r = num1*num2 elif operation == '/': if num2 == 0: r = math.inf else: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split() a = [int(a[0]),int(a[1]),int(a[2]),int(a[3])] cases = generate_all_combinations( a, '+-*/' ) for i in cases: a = calc(i[0],i[1],i[2]) b = calc(a,i[3],i[4]) c = calc(b,i[5],i[6]) if c != 24: a = calc(i[2],i[3],i[4]) b = calc(i[0],i[1],a) c = calc(b,i[5],i[6]) if c != 24: a = calc(i[0],i[1],i[2]) b = calc(i[4],i[5],i[6]) c = calc(a,i[3],b) if c != 24: a = calc(i[2],i[3],i[4]) b = calc(a,i[5],i[6]) c = calc(i[0],i[1],b) if c != 24: a = calc(i[4],i[5],i[6]) b = calc(i[2],i[3],a) c = calc(i[0],i[1],b) if c == 24: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','=',24) else: print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','=',24) else: print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=',24) else: print('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'=',24) else: print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=',24) if c == 24: break if c != 24: print('No Solutions')
# 6330351721 (20) 199 (2021-02-20 00:48) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num1 != 0 and num2 == math.inf: r = math.inf elif num1 == 0 and num2 == math.inf: r = math.inf elif num2 == 0 : r = math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a,b,c,d = [int(e) for e in nums.split()] x = '' cases = generate_all_combinations( [a,b,c,d], '+-*/' ) for i in cases: a = i[0] b = i[2] c = i[4] d = i[6] op1 = i[1] op2 = i[3] op3 = i[5] if calc(calc(calc(a,op1,b),op2,c),op3,d) == 24: x = '('+' '+'('+' '+str(a)+' '+op1+' '+str(b)+' '+')'+' '+op2+' '+str(c)+' '+')'+' '+op3+' '+str(d)+' '+'= 24' elif calc(calc(a,op1,calc(b,op2,c)),op3,d) == 24: x = '('+' '+str(a)+' '+op1+' '+'('+' '+str(b)+' '+op2+' '+str(c)+' '+')'+' '+')'+' '+op3+' '+str(d)+' '+'= 24' elif calc(a,op1,calc(calc(b,op2,c),op3,d)) == 24: x = str(a)+' '+op1+' '+'('+' '+'('+' '+str(b)+' '+op2+' '+str(c)+' '+')'+' '+op3+' '+str(d)+' '+')'+' '+'= 24' elif calc(calc(a,op1,b),op2,calc(c,op3,d)) == 24: x = '('+' '+str(a)+' '+op1+' '+str(b)+' '+')'+' '+op2+' '+'('+' '+str(c)+' '+op3+' '+str(d)+' '+')'+' '+'= 24' elif calc(a,op1,calc(b,op2,calc(c,op3,d))) == 24: x = str(a)+' '+op1+' '+'('+' '+str(b)+' '+op2+' '+'('+' '+str(c)+' '+op3+' '+str(d)+' '+')'+' '+')'+' '+'= 24' if x != '': print (x) else: print('No Solutions')
# 6330352321 (20) 200 (2021-02-21 00:58) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op== '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0: r = num1 / num2 else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() op = '+-*/' cases = generate_all_combinations( num_list, '+-*/' ) result_1 = [] for i in range(len(cases)): if cases[i][1] == "/" and int(cases[i][2]) == 0: result_1 += ["ERROR"] else: a = 0 b = 0 c = 0 a += calc(int(cases[i][0]), cases[i][1], int(cases[i][2])) if cases[i][3] == "/" and cases[i][4] == 0: result_1 += ["ERROR"] else: b += calc(a, cases[i][3], int(cases[i][4])) if cases[i][5] == "/" and cases[i][6] == 0: result_1 += ["ERROR"] else: c += calc(b, cases[i][5], int(cases[i][6])) if float(c) != 24: result_1 += [str(c)] else: result_1 += ["24"] result_2 = [] for i in range(len(cases)): if cases[i][3] == "/" and int(cases[i][4]) == 0: result_2 += ["ERROR"] else: a = 0 b = 0 c = 0 a += calc(int(cases[i][2]), cases[i][3], int(cases[i][4])) if cases[i][0] == "/" and a == 0: result_2 += ["ERROR"] else: b += calc(int(cases[i][0]), cases[i][1], a) if cases[i][5] == "/" and int(cases[i][6]) == 0: result_2 += ["ERROR"] else: c += calc(b, cases[i][5], int(cases[i][6])) if float(c) != 24: result_2 += [str(c)] else: result_2 += ["24"] result_3 = [] for i in range(len(cases)): if cases[i][1] == "/" and int(cases[i][2]) == 0: result_3 += ["ERROR"] else: a = 0 b = 0 c = 0 a += calc(int(cases[i][0]), cases[i][1], int(cases[i][2])) if cases[i][5] == "/" and int(cases[i][6]) == 0: result_3 += ["ERROR"] else: b += calc(int(cases[i][4]), cases[i][5], int(cases[i][6])) if cases[i][3] == "/" and b == 0: result_3 += ["ERROR"] else: c += calc(a, cases[i][3], b) if float(c) != 24: result_3 += [str(c)] else: result_3 += ["24"] result_4 = [] for i in range(len(cases)): if cases[i][3] == "/" and int(cases[i][4]) == 0: result_4 += ["ERROR"] else: a = 0 b = 0 c = 0 a += calc(int(cases[i][2]), cases[i][3], int(cases[i][4])) if cases[i][5] == "/" and int(cases[i][6]) == 0: result_4 += ["ERROR"] else: b += calc(a, cases[i][5], int(cases[i][6])) if cases[i][0] == "/" and b == 0: result_4 += ["ERROR"] else: c += calc(int(cases[i][0]), cases[i][1], b) if float(c) != 24: result_4 += [str(c)] else: result_4 += ["24"] result_5 = [] for i in range(len(cases)): if cases[i][5] == "/" and int(cases[i][6]) == 0: result_5 += ["ERROR"] else: a = 0 b = 0 c = 0 a += calc(int(cases[i][4]), cases[i][5], int(cases[i][6])) if cases[i][3] == "/" and a == 0: result_5 += ["ERROR"] else: b += calc(int(cases[i][2]), cases[i][3], a) if cases[i][0] == "/" and b == 0: result_5 += ["ERROR"] else: c += calc(int(cases[i][0]), cases[i][1], b) if float(c) != 24: result_5 += [str(c)] else: result_5 += ["24"] minor_cases= [] for i in range(len(cases)): minor_cases += ["( "+"( "+cases[i][0]+" "+cases[i][1]+" "+cases[i][2]+" "+") "+cases[i][3]+" "+cases[i][4]+" "+") "+cases[i][5]+" "+cases[i][6]+" "+"="+" "+result_1[i]] minor_cases += ["( "+cases[i][0]+" "+cases[i][1]+" "+"( "+cases[i][2]+" "+cases[i][3]+" "+cases[i][4]+" "+") "+") "+cases[i][5]+" "+cases[i][6]+" "+"="+" "+result_2[i]] minor_cases += ["( "+cases[i][0]+" "+cases[i][1]+" "+cases[i][2]+" "+") "+cases[i][3]+" "+"( "+cases[i][4]+" "+cases[i][5]+" "+cases[i][6]+" "+") "+"="+" "+result_3[i]] minor_cases += [cases[i][0]+" "+cases[i][1]+" "+"( "+"( "+cases[i][2]+" "+cases[i][3]+" "+cases[i][4]+" "+") "+cases[i][5]+" "+cases[i][6]+" "+") "+"="+" "+result_4[i]] minor_cases += [cases[i][0]+" "+cases[i][1]+" "+"( "+cases[i][2]+" "+cases[i][3]+" "+"( "+cases[i][4]+" "+cases[i][5]+" "+cases[i][6]+" "+") "+") "+"="+" "+result_5[i]] if "24" in result_1 + result_2 + result_3 + result_4 + result_5 : for i in range(len(minor_cases)): if minor_cases[i][-3:] == " 24" : print(minor_cases[i]) if minor_cases[i][-3:] == " 24" :break else: print("No Solutions")
# 6330353021 (20) 201 (2021-02-20 00:33) def calc(num1,op,num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0: r = num1 / num2 elif op == '/' and num2 == 0: r = float('inf') return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') N = [int(e) for e in nums.split(' ')] cases = generate_all_combinations( N, '+-*/' ) n = 0 while n< int(len(cases)) : k = cases[n] num1 = k[0] op1 = k[1] num2 = k[2] op2 = k[3] num3 = k[4] op3 = k[5] num4 = k[6] if calc(calc(calc(num1,op1,num2),op2,num3),op3,num4) == 24 : print('(','(',num1,op1,num2,')',op2,num3,')',op3,num4,'=','24') break if calc(calc(num1,op1,calc(num2,op2,num3)),op3,num4) == 24 : print('(',num1,op1,'(',num2,op2,num3,')',')',op3,num4,'=','24') break if calc(calc(num1,op1,num2),op2,calc(num3,op3,num4)) == 24 : print('(',num1,op1,num2,')',op2,'(',num3,op3,num4,')','=','24') break if calc(num1,op1,calc(calc(num2,op2,num3),op3,num4)) == 24 : print(num1,op1,'(','(',num2,op2,num3,')',op3,num4,')','=','24') break if calc(num1,op1,calc(num2,op2,calc(num3,op3,num4))) == 24 : print(num1,op1,'(',num2,op2,'(',num3,op3,num4,')',')','=','24') break n += 1 if n == int(len(cases)) : print('No Solutions')
# 6330354621 (20) 202 (2021-02-22 16:08) def calc(num1, op, num2): r=0 if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 !=0: r = num1 / num2 return r #1 2 3 4 #--------------------------------------------------------- nums = input('Enter 4 integers: ') a=nums.split() i=0 cases = generate_all_combinations(a, '+-*/' ) for e in cases: #รูปแบบ (a+b)+(c+d) result1=calc(int(e[0]),e[1],int(e[2])) result2=calc(int(e[4]),e[5],int(e[6])) totresult=calc(result1,e[3],result2) #รูปแบบ a+(b+(c+d)) re1=calc(int(e[4]),e[5],int(e[6])) re2=calc(int(e[2]),e[3],re1) totre2=calc(int(e[0]),e[1],re2) #รูปแบบ ((a+b)+c)+d re11=calc(int(e[0]),e[1],int(e[2])) re22=calc(re11,e[3],int(e[4])) totre3=calc(re22,e[5],int(e[6])) #รูปแบบ a+((b+c)+d) re3=calc(int(e[2]),e[3],int(e[4])) re4=calc(re3,e[5],int(e[6])) totre4=calc(int(e[0]),e[1],re4) #รูปแบบ (a+(b+c))+d re5=calc(int(e[2]),e[3],int(e[4])) re6=calc(int(e[0]),e[1],re5) totre5=calc(re6,e[5],int(e[6])) #check ตอบ if totresult==24: #รูปแบบ (a+b)+(c+d) print('(',str(e[0]),str(e[1]),str(e[2]),')',str(e[3]),'(',str(e[4]),str(e[5]),str(e[6]),')','=','24') i+=1 break if totre2==24: #รูปแบบ a+(b+(c+d)) print(str(e[0]),str(e[1]),'(',str(e[2]),str(e[3]),'(',str(e[4]),str(e[5]),str(e[6]),')',')','=','24') i+=1 break elif totre3==24: #รูปแบบ ((a+b)+c)+d print('(','(',str(e[0]),str(e[1]),str(e[2]),')',str(e[3]),str(e[4]),')',str(e[5]),str(e[6]),'=','24') i+=1 break elif totre4==24: #รูปแบบ a+((b+c)+d) print(str(e[0]),str(e[1]),'(','(',str(e[2]),str(e[3]),str(e[4]),')',str(e[5]),str(e[6]),')','=','24') i+=1 break elif totre5==24: #รูปแบบ (a+(b+c))+d print('(',str(e[0]),str(e[1]),'(',str(e[2]),str(e[3]),str(e[4]),')',')',str(e[5]),str(e[6]),'=','24') i+=1 break print('''No Solutions'''*(1-i))
# 6330355221 (20) 203 (2021-02-21 13:45) import math def calc(first, operation1_2,second) : if operation1_2 == '+': opabsu = first+second elif operation1_2 == '-': opabsu = first-second elif operation1_2 == '*': opabsu = first*second else: if second ==0 : opabsu = math.inf else : opabsu = first/second return opabsu #--------------------------------------------------------- nums = input('Enter 4 integers: ') inttval = nums.split() cases = generate_all_combinations(inttval, '+-*/' ) for z in cases: if calc(calc(calc(int(z[0]),z[1],int(z[2])),z[3],int(z[4])),z[5],int(z[6])) == 24: print('(','(',str(z[0]),str(z[1]),str(z[2]),')',str(z[3]),str(z[4]),')',str(z[5]),str(z[6]),'=','24') break elif calc(calc(int(z[0]),z[1],int(z[2])),z[3],calc(int(z[4]),z[5],int(z[6]))) == 24: print('(',str(z[0]),str(z[1]),str(z[2]),')',str(z[3]),'(',str(z[4]),str(z[5]),str(z[6]),')','=','24') break elif calc(calc(int(z[0]),z[1],calc(int(z[2]),z[3],int(z[4]))),z[5],int(z[6])) == 24: print('(',str(z[0]),str(z[1]),'(',str(z[2]),str(z[3]),str(z[4]),')',')',str(z[5]),str(z[6]),'=','24') break elif calc(int(z[0]),z[1],calc(int(z[2]),z[3],calc(int(z[4]),z[5],int(z[6])))) == 24: print(str(z[0]),str(z[1]),'(',str(z[2]),str(z[3]),'(',str(z[4]),str(z[5]),str(z[6]),')',')','=','24') break elif calc(int(z[0]),z[1],calc(calc(int(z[2]),z[3],int(z[4])),z[5],int(z[6]))) == 24: print(str(z[0]),str(z[1]),'(','(',str(z[2]),str(z[3]),str(z[4]),')',str(z[5]),str(z[6]),')','=','24') break else : print('No Solutions')
# 6330356921 (20) 204 (2021-02-19 18:16) def calc( num1, operation, num2) : if operation == "+" : r = num1 + num2 elif operation == "-" : r = num1 - num2 elif operation == "*" : r = num1 * num2 elif operation == "/" : if num2 == 0 : r = 0 else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split(" ") ... cases = generate_all_combinations([nums[0],nums[1],nums[2],nums[3]], '+-*/' ) for k in range(len(cases)) : cases[k][0]=int(cases[k][0]) cases[k][2]=int(cases[k][2]) cases[k][4]=int(cases[k][4]) cases[k][6]=int(cases[k][6]) a = calc(calc(calc(cases[k][0],cases[k][1],cases[k][2]),cases[k][3],cases[k][4]),cases[k][5],cases[k][6]) if a==24 : print("( ( {} {} {} ) {} {} ) {} {} = 24".format(cases[k][0],cases[k][1],cases[k][2],cases[k][3],cases[k][4],cases[k][5],cases[k][6])) break a = calc(calc(cases[k][0],cases[k][1],calc(cases[k][2],cases[k][3],cases[k][4])),cases[k][5],cases[k][6]) if a==24 : print("( {} {} ( {} {} {} ) ) {} {} = 24".format(cases[k][0],cases[k][1],cases[k][2],cases[k][3],cases[k][4],cases[k][5],cases[k][6])) break a = calc(calc(cases[k][0],cases[k][1],cases[k][2]),cases[k][3],(calc(cases[k][4],cases[k][5],cases[k][6]))) if a==24 : print("( {} {} {} ) {} ( {} {} {} ) = 24".format(cases[k][0],cases[k][1],cases[k][2],cases[k][3],cases[k][4],cases[k][5],cases[k][6])) break a = calc(cases[k][0],cases[k][1],calc(calc(cases[k][2],cases[k][3],cases[k][4]),cases[k][5],cases[k][6])) if a==24 : print("{} {} ( ( {} {} {} ) {} {} ) = 24".format(cases[k][0],cases[k][1],cases[k][2],cases[k][3],cases[k][4],cases[k][5],cases[k][6])) break a = calc(cases[k][0],cases[k][1],calc(cases[k][2],cases[k][3],calc(cases[k][4],cases[k][5],cases[k][6]))) if a==24 : print("{} {} ( {} {} ( {} {} {} ) ) = 24".format(cases[k][0],cases[k][1],cases[k][2],cases[k][3],cases[k][4],cases[k][5],cases[k][6])) break if a!=24 : print("No Solutions")
# 6330357521 (18) 205 (2021-02-22 15:15) def calc(num1,op,num2): if op == "+": r =float(num1)+float(num2) elif op == "-": r =float(num1)-float(num2) elif op == "*": r =float(num1)*float(num2) elif op == "/" : if float(num2) ==0: return 0 r =float(num1)/float(num2) return r nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) c=[] for y in cases: re1=calc(calc(calc(y[0],y[1],y[2]),y[3],y[4]),y[5],y[6]) if re1 ==24: d=["("+" "+"("+" "+y[0]+" "+y[1]+" "+y[2]+" "+")"+" "+y[3]+" "+y[4]+" "+")"+" "+y[5]+" "+y[6]] re2=calc(calc(y[0],y[1],calc(y[2],y[3],y[4])),y[5],y[6]) if re2 ==24: d=["("+" "+y[0]+" "+y[1]+" "+"("+" "+y[2]+" "+y[3]+" "+y[4]+" "+")"+" "+")"+" "+y[5]+" "+y[6]] re3=calc(calc(y[0],y[1],y[2]),y[3],calc(y[4],y[5],y[6])) if re3 ==24: d=["("+" "+y[0]+" "+y[1]+" "+y[2]+" "+")"+" "+y[3]+" "+"("+" "+y[4]+" "+y[5]+" "+y[6]+" "+")"] re4=calc(y[0],y[1],calc(calc(y[2],y[3],y[4]),y[5],y[6])) if re4 ==24: d=[y[0]+" "+y[1]+" "+"("+" "+"("+" "+y[2]+" "+y[3]+" "+y[4]+" "+")"+" "+y[5]+" "+y[6]+" "+")"] re5=calc(y[0],y[1],calc(y[2],y[3],calc(y[4],y[5],y[6]))) if re5 ==24: d=[y[0]+" "+y[1]+" "+"("+" "+y[2]+" "+y[3]+" "+"("+" "+y[4]+" "+y[5]+" "+y[6]+" "+")"+" "+")"] if len(d)!=0: print(d[0]+" "+"="+" "+"24") if len(d)==0: print("No Solutions")
# 6330358121 (20) 206 (2021-02-20 01:44) def calc(num1, op, num2): if num1=='q' or num2=='q':r='q' else: l='+ - * /'.split();t=[num1+num2,num1-num2,num1*num2,'q'] for i in range(4): if l[i]==op: if num2==0:r=t[i] else:t[-1]=num1/num2;r=t[i] return r def show(num1, op, num2):return '( '+str(num1)+' '+op+' '+str(num2)+' )' def all_calc(e): cal1=calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6]) cal2=calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6]) cal3=calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6])) cal4=calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6])) cal5=calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6]))) return [cal1,cal2,cal3,cal4,cal5] def all_show(e): show1=show(show(e[0],e[1],e[2]),e[3],e[4])+' '+e[5]+' '+str(e[6]) show2=show(e[0],e[1],show(e[2],e[3],e[4]))+' '+e[5]+' '+str(e[6]) show3=show(e[0],e[1],e[2])+' '+e[3]+' '+show(e[4],e[5],e[6]) show4=str(e[0])+' '+e[1]+' '+show(show(e[2],e[3],e[4]),e[5],e[6]) show5=str(e[0])+' '+e[1]+' '+show(e[2],e[3],show(e[4],e[5],e[6])) return [show1,show2,show3,show4,show5] #--------------------------------------------------------- nums = input('Enter 4 integers: ');h=nums.split() for k in range(len(h)):h[k]=int(h[k]) cases = generate_all_combinations(h,'+-*/');i=0;y='' while 24 not in all_calc(cases[i]): i+=1 if i==len(cases):y='No Solutions';break if len(y)>0:print(y) else: g=all_calc(cases[i]) for j in range(5): if g[j]==24:print(all_show(cases[i])[j],'=','24');break
# 6330360321 (20) 207 (2021-02-22 17:22) def tol(n1,op,n2) : if op == '+' : n = n1 + n2 elif op == '-' : n = n1 - n2 elif op == '/' : if n2 != 0 : n = n1 / n2 else : n = 999999999999999999999999999999999999999999 elif op == '*' : n = n1 * n2 return n #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() numlist = [int(nums[0]),int(nums[1]),int(nums[2]),int(nums[3])] C = generate_all_combinations( numlist , '+-*/' ) n = 0 i = 0 while i == 0 : c = C[n] a1 = tol(tol(tol(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) a2 = tol(tol(c[0],c[1],tol(c[2],c[3],c[4])),c[5],c[6]) a3 = tol(tol(c[0],c[1],c[2]),c[3],tol(c[4],c[5],c[6])) a4 = tol(c[0],c[1],tol(tol(c[2],c[3],c[4]),c[5],c[6])) a5 = tol(c[0],c[1],tol(c[2],c[3],tol(c[4],c[5],c[6]))) if a1 == 24 : solution = '( ( '+str(c[0])+' '+c[1]+' '+str(c[2])+' ) '+c[3]+' '+str(c[4])+' ) '+c[5]+' '+str(c[6]) print(solution,'= 24 ') i = 1 elif a2 == 24 : solution = '( '+str(c[0])+' '+c[1]+' ( '+str(c[2])+' '+c[3]+' '+str(c[4])+' ) ) '+c[5]+' '+str(c[6]) print(solution,'= 24 ') i = 1 elif a3 == 24 : solution = '( '+str(c[0])+' '+c[1]+' '+str(c[2])+' ) '+c[3]+' ( '+str(c[4])+' '+c[5]+' '+str(c[6])+' )' print(solution,'= 24 ') i = 1 elif a4 == 24 : solution = str(c[0])+' '+c[1]+' ( ( '+str(c[2])+' '+c[3]+' '+str(c[4])+' ) '+c[5]+' '+str(c[6])+' )' print(solution,'= 24 ') i = 1 elif a5 == 24 : solution = str(c[0])+' '+c[1]+' ( '+str(c[2])+' '+c[3]+' ( '+str(c[4])+' '+c[5]+' '+str(c[6])+' ) )' print(solution,'= 24 ') i = 1 elif C[n] == C[-1] : solution = 'No Solutions' print(solution) i = 1 else : n += 1 i = 0
# 6330361021 (20) 208 (2021-02-22 01:21) def calc(num1, op, num2,r=0): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if not num2 == 0: r = num1 / num2 else: r = float('inf') return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_lst = nums.split() cases = generate_all_combinations( num_lst , '+-*/' ) ans = 0 for i in cases: ans_1 = calc(calc(calc(int(i[0]),i[1],int(i[2])),i[3],int(i[4])),i[5],int(i[6])) if ans_1 == 24: # ( ( 1 + 2 ) + 3 ) + 4 ans = '( ( '+i[0]+' '+i[1]+' '+i[2]+' ) '+i[3]+' '+i[4]+' ) '+i[5]+' '+i[6] break ans_2 = calc(calc(int(i[0]),i[1],calc(int(i[2]),i[3],int(i[4]))),i[5],int(i[6])) if ans_2 == 24: # ( 1 + ( 2 + 3 ) ) + 4 ans = '( '+i[0]+' '+i[1]+' ( '+i[2]+' '+i[3]+' '+i[4]+' ) ) '+i[5]+' '+i[6] break ans_3 = calc(calc(int(i[0]),i[1],int(i[2])),i[3],calc(int(i[4]),i[5],int(i[6]))) if ans_3 == 24: # ( 1 + 2 ) + ( 3 + 4 ) ans = '( '+i[0]+' '+i[1]+' '+i[2]+' ) '+i[3]+' ( '+i[4]+' '+i[5]+' '+i[6]+' ) ' break ans_4 = calc(int(i[0]),i[1],calc(calc(int(i[2]),i[3],int(i[4])),i[5],int(i[6]))) if ans_4 == 24: # 1 + ( ( 2 + 3 ) + 4 ) ans = i[0]+' '+i[1]+' ( ( '+i[2]+' '+i[3]+' '+i[4]+' ) '+i[5]+' '+i[6]+' )' break ans_5 = calc(int(i[0]),i[1],calc(int(i[2]),i[3],calc(int(i[4]),i[5],int(i[6])))) if ans_5 == 24: # 1 + ( 2 + ( 3 + 4 ) ) ans = i[0]+' '+i[1]+' ( '+i[2]+' '+i[3]+' ( '+i[4]+' '+i[5]+' '+i[6]+' ) )' break if ans == 0: print("No Solutions") else: print(ans+" = 24")
# 6330362621 (6) 209 (2021-02-21 00:01) def calc(num1,op,num2): num1=float(num1) num2=float(num2) if op == '+': r=num1+num2 elif op == '-': r=num1-num2 elif op == '*': r=num1*num2 elif op == '/' and num2 !=0: r=num1/num2 else: return False return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') numja = nums.split() cases = generate_all_combinations(numja, '+-*/' ) d=[] for a in cases: op1 = a[1] op2 = a[3] op3 = a[5] num1=a[0] num2=a[2] num3=a[4] num4=a[6] firstr = calc(calc(calc(num1,op1,num2),op2,num3),op3,num4) secondr = calc(calc(num1,op1,calc(num2,op2,num3)),op3,num4) thirdr = calc(calc(num1,op1,num2),op2,calc(num3,op3,num4)) forthr = calc(num1,op1,calc(calc(num2,op2,num3),op3,num4)) fifthr = calc(num1,op1,calc(num2,op2,calc(num3,op3,num4))) if firstr ==24: d+=['('+'('+num1+op1+num2+')'+op2+num3+')'+op3+num4] if secondr ==24: d+=['('+num1+op1+'('+num2+op2+num3+')'+')'+op3+num4] if thirdr ==24: d+=['('+num1+op1+num2+')'+op2+'('+num3+op3+num4+')'] if forthr ==24: d+=[num1+op1+'('+'('+num2+op2+num3+')'+op3+num4+')'] if fifthr ==24: d+=[num1+op1+'('+num2+op2+'('+num3+op3+num4+')'+')'] if len(d)!=0: print((' ').join(d[0]),'=','24') if len(d)==0: print('No Solutions')
# 6330365521 (20) 210 (2021-02-20 20:27) def cal(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' : if num2==0: r=0 return r r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() ch=0 i=0 case = generate_all_combinations( nums, '+-*/' ) j=len(case) while i< j: case = generate_all_combinations( nums, '+-*/' ) c=case[i] if cal(cal(cal(int(c[0]),c[1],int(c[2])),c[3],int(c[4])),c[5],int(c[6]))==24: ch=1 break elif cal(cal(int(c[0]),c[1],cal(int(c[2]),c[3],int(c[4]))),c[5],int(c[6]))==24: ch=2 break elif cal(cal(int(c[0]),c[1],int(c[2])),c[3],cal(int(c[4]),c[5],int(c[6])))==24: ch=3 break elif cal(int(c[0]),c[1],cal(cal(int(c[2]),c[3],int(c[4])),c[5],int(c[6])))==24: ch=4 break elif cal(int(c[0]),c[1],cal(int(c[2]),c[3], cal(int(c[4]),c[5],int(c[6]))))==24: ch=5 break i=i+1 if ch==0: print('No Solutions') elif ch==1: print('(','(',c[0],c[1],c[2],')',c[3],c[4],')',c[5],c[6],' = 24') elif ch==2: print('(',c[0],c[1],'(',c[2],c[3],c[4],') )',c[5],c[6],' = 24') elif ch==3: print('(',c[0],c[1],c[2],')',c[3],'(',c[4],c[5],c[6],') = 24') elif ch==4: print(c[0],c[1],'( (',c[2],c[3],c[4],')',c[5],c[6],') = 24') elif ch==5: print(c[0],c[1],'(',c[2],c[3],'(',c[4],c[5],c[6],') ) = 24')
# 6330366121 (16.08) 211 (2021-02-21 11:06) def calc(num1, op, num2): good = True if num2 == 'Han mai dai' or num1 == 'Han mai dai': r = 'Han mai dai' elif op == '+': r = float(num1) + float(num2) elif op == '-' : r = float(num1) - float(num2) elif op == '*' : r = float(num1) * float(num2) elif op == '/' : if float(num2) == 0 : good = False else : r = float(num1) / float(num2) if good == False : r = 'Han mai dai' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations(nums.split(), '+-*/' ) n=0 for case in cases : jab1 = case[0] jab2 = case[1] hook1 = case[2] hook2 = case[3] kick1 = case[4] kick2 = case[5] Iloveshorthairbutshedontlikemebutshelikeprasert = case[6] if calc(calc(calc(jab1,jab2,hook1),hook2,kick1),kick2,Iloveshorthairbutshedontlikemebutshelikeprasert) == 24: print('(','(',jab1,jab2,hook1,')',hook2,kick1,')',kick2,Iloveshorthairbutshedontlikemebutshelikeprasert,'=',int(calc(calc(calc(jab1,jab2,hook1),hook2,kick1),kick2,Iloveshorthairbutshedontlikemebutshelikeprasert))) break if calc(calc(jab1,jab2,calc(hook1,hook2,kick1)),kick2,Iloveshorthairbutshedontlikemebutshelikeprasert) == 24: print('(',jab1,jab2,'(',hook1,hook2,kick1,')',kick2,Iloveshorthairbutshedontlikemebutshelikeprasert,'=',int(calc(calc(jab1,jab2,calc(hook1,hook2,kick1)),kick2,Iloveshorthairbutshedontlikemebutshelikeprasert))) break if calc(calc(jab1,jab2,hook1),hook2,calc(kick1,kick2,Iloveshorthairbutshedontlikemebutshelikeprasert)) == 24: print('(',jab1,jab2,hook1,')',hook2,'(',kick1,kick2,Iloveshorthairbutshedontlikemebutshelikeprasert,')','=',int(calc(calc(jab1,jab2,hook1),hook2,calc(kick1,kick2,Iloveshorthairbutshedontlikemebutshelikeprasert)))) break if calc(jab1,jab2,calc((calc(hook1,hook2,kick1)),kick2,Iloveshorthairbutshedontlikemebutshelikeprasert)) == 24: print(jab1,jab2,'(','(',hook1,hook2,kick1,')',kick2,Iloveshorthairbutshedontlikemebutshelikeprasert,')','=',int(calc(jab1,jab2,calc((calc(hook1,hook2,kick1)),kick2,Iloveshorthairbutshedontlikemebutshelikeprasert)))) break if calc(jab1,jab2,calc(hook1,hook2,(calc(kick1,kick2,Iloveshorthairbutshedontlikemebutshelikeprasert)))) == 24: print(jab1,jab2,'(',hook1,hook2,'(',kick1,kick2,Iloveshorthairbutshedontlikemebutshelikeprasert,')',')','=',int(calc(jab1,jab2,calc(hook1,hook2,(calc(kick1,kick2,Iloveshorthairbutshedontlikemebutshelikeprasert)))))) break n+=1 if n >= len(cases): print('No Solutions')
# 6330367821 (20) 212 (2021-02-21 23:11) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0: r = num1 / num2 elif op == '/' and num2 == 0: return False return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int (e) for e in nums.split()] cases = generate_all_combinations( num_list, '+-*/' ) for a in cases : r1 = calc(calc(calc(a[0], a[1], a[2]), a[3], a[4]), a[5], a[6]) r2 = calc(calc(a[0], a[1], calc(a[2], a[3], a[4])), a[5], a[6]) r3 = calc(calc(a[0], a[1], a[2]), a[3], calc(a[4], a[5], a[6])) r4 = calc(a[0], a[1], calc(calc(a[2], a[3], a[4]), a[5], a[6])) r5 = calc(a[0], a[1], calc(a[2], a[3], calc(a[4], a[5], a[6]))) if r1 == 24: print("( (", a[0], a[1], a[2], ')', a[3], a[4], ')', a[5], a[6], '= 24') break elif r2 == 24: print('(', a[0], a[1], '(', a[2], a[3], a[4], ') )', a[5], a[6], '= 24') break elif r3 == 24: print('(', a[0], a[1], a[2], ')', a[3], '(', a[4], a[5], a[6], ') = 24') break elif r4 == 24: print(a[0], a[1], '( (', a[2], a[3], a[4], ')', a[5], a[6], ') = 24') break elif r5 == 24: print(a[0], a[1], '(', a[2], a[3], '(', a[4], a[5], a[6], ') ) = 24') break else: print('No Solutions')
# 6330370621 (20) 213 (2021-02-18 16:54) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/' and num2 != 0: r = num1 / num2 elif operation == '/' and num2 == 0: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') numlist = [int(e) for e in nums.split()] C = generate_all_combinations(numlist, '+-*/' ) for i in range(len(C)) : k0=str((C[i])[0]);k1=str((C[i])[1]);k2=str((C[i])[2]);k3=str((C[i])[3]);k4=str((C[i])[4]);k5=str((C[i])[5]);k6=str((C[i])[6]);o='(';p=')' cal = calc(calc(calc((C[i])[0], (C[i])[1], (C[i])[2]), (C[i])[3], (C[i])[4]), (C[i])[5], (C[i])[6]) if cal==24: print(o,o,k0,k1,k2,p,k3,k4,p,k5,k6,'=','24') break cal = calc(calc((C[i])[0], (C[i])[1], calc((C[i])[2], (C[i])[3], (C[i])[4])), (C[i])[5], (C[i])[6]) if cal==24: print(o,k0,k1,o,k2,k3,k4,p,p,k5,k6,'=','24') break cal = calc(calc((C[i])[0], (C[i])[1], (C[i])[2]), (C[i])[3], calc((C[i])[4], (C[i])[5], (C[i])[6])) if cal==24: print(o,k0,k1,k2,p,k3,o,k4,k5,k6,p,'=','24') break cal = calc((C[i])[0], (C[i])[1], calc(calc((C[i])[2], (C[i])[3], (C[i])[4]), (C[i])[5], (C[i])[6])) if cal==24: print(k0,k1,o,o,k2,k3,k4,p,k5,k6,p,'=','24') break cal = calc((C[i])[0], (C[i])[1], calc((C[i])[2], (C[i])[3], calc((C[i])[4], (C[i])[5], (C[i])[6]))) if cal==24: print(k0,k1,o,k2,k3,o,k4,k5,k6,p,p,'=','24') break if cal != 24: print("No Solutions")
# 6330371221 (19.82) 214 (2021-02-21 21:37) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = 100 else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') k = nums.split() f = generate_all_combinations(k,'+-*/') for a in f: if calc(calc(calc(int(a[0]),a[1],int(a[2])),a[3],int(a[4])),a[5],int(a[6])) == 24: print('(','(',str(a[0]),str(a[1]),str(a[2]),')',str(a[3]),str(a[4]),')',str(a[5]),str(a[6]),'=',24) break elif calc(calc(int(a[0]),a[1],calc(int(a[2]),a[3],int(a[4]))),a[5],int(a[6])) == 24: print('(',str(a[0]),str(a[1]),'(',str(a[2]),str(a[3]),str(a[4]),')',')',str(a[5]),str(a[6]),'=',24) break elif calc(calc(int(a[0]),a[1],int(a[2])),a[3],calc(int(a[4]),a[5],int(a[6]))) == 24: print('(',str(a[0]),str(a[1]),str(a[2]),')',str(a[3]),'(',str(a[4]),str(a[5]),str(a[6]),')','=',24) break elif calc(int(a[0]),a[1],calc(calc(int(a[2]),a[3],int(a[4])),a[5],int(a[6]))) == 24: print(str(a[0]),str(a[1]),'(','(',str(a[2]),str(a[3]),str(a[4]),')',str(a[5]),str(a[6]),')','=',24) break elif calc(int(a[0]),a[1],calc(int(a[2]),a[3],calc(int(a[4]),a[5],int(a[6])))) == 24: print(str(a[0]),str(a[1]),'(',str(a[2]),str(a[3]),'(',str(a[4]),str(a[5]),str(a[6]),')',')','=',24) break if f.index(a)==len(f)-1: print('No Solution')
# 6330372921 (19.8) 215 (2021-02-22 12:21) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0: r = num1 / num2 else: r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split() cases = generate_all_combinations( a, '+-*/' ) s1=0 s2=0 s3=0 s4=0 s5=0 for i in cases : s1 = calc(calc(calc(int(i[0]), i[1],int(i[2])), i[3], int(i[4])), i[5], int(i[6])) if s1 == 24: print('( (',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'= 24') break s2 = calc(calc(int(i[0]),i[1],calc(int(i[2]),i[3],int(i[4]))),i[5],int(i[6])) if s2 == 24: print('(',i[0],i[1],'(',i[2],i[3],i[4],') )',i[5],i[6],'= 24') break s3 = calc(calc(int(i[0]), i[1],int(i[2])), i[3], calc(int(i[4]),i[5],int(i[6]))) if s3 == 24: print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','= 24') break s4 = calc(int(i[0]),i[1],calc(calc(int(i[2]),i[3],int(i[4])),i[5],int(i[6]))) if s4 == 24: print(i[0],i[1],'( (',i[2],i[3],i[4],')',i[5],i[6],')','= 24') break s5 = calc(int(i[0]),i[1],calc(int(i[2]),i[3],calc(int(i[4]),i[5],int(i[6])))) if s5 == 24: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],') )','= 24') break1 a = [s1,s2,s3,s4,s5] if not 24 in a: print('No Solutions')
# 6330374121 (20) 216 (2021-02-22 12:15) def calc(num1, op, num2): if num1 == False or num2 == False: return False elif op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 else: if num2 != 0: r = num1 / num2 else: return False return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.split()] cases = generate_all_combinations( num_list, '+-*/' ) found = False for c in cases: if calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) == 24: print("( (", c[0], c[1], c[2], ")", c[3], c[4], ")", c[5], c[6], "= 24") found = True break elif calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) == 24: print("(", c[0], c[1], "(", c[2], c[3], c[4], ") )", c[5], c[6], "= 24") found = True break elif calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])) == 24: print("(", c[0], c[1], c[2], ")", c[3], "(", c[4], c[5], c[6], ")", "= 24") found = True break elif calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) == 24: print(c[0], c[1], "( (", c[2], c[3], c[4], ")", c[5], c[6], ") = 24") found = True break elif calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) == 24: print(c[0], c[1], "(", c[2], c[3], "(", c[4], c[5], c[6], ") ) = 24") found = True break if found == False: print("No Solutions")
# 6330375821 (18) 217 (2021-02-22 23:56) def C(num1, op, num2): num1 = float(num1) num2 = float(num2) if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2!=0 : r = num1 / num2 else: r = 999999 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split(' ') cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)): w,x,y,z= cases[i][0], cases[i][2], cases[i][4], cases[i][6] o1,o2,o3 = cases[i][1], cases[i][3], cases[i][5] if C(C(C(w,o1,x),o2,y),o3,z) == 24: print('(','(',w,o1,x,')',o2,y,')',o3,z,'=','24') break elif C(C(w,o1,C(x,o2,y)),o3,z) == 24: print('(',str(w),str(o1),'(',str(x),str(o2),str(y),')',')',str(o3),str(z),'=','24') break elif C(C(w,o1,x),o2,C(y,o3,z)) == 24: print('(',str(w),str(o1),str(x),')',str(o2),'(',str(y),str(o3),str(z),')','=','24') break elif C(w,o1,C(C(x,o2,y),o3,z)) ==24: print(str(w),str(o1),'(','(',str(x),str(o2),str(y),')',str(o3),str(z),')','=','24') break elif C(w,o1,C(x,o2,C(y,o3,z))) == 24: print(str(w),str(o1),'(',str(x),str(o2),'(',str(x),str(o2),'(',str(y),str(o3),str(z),')',')','=','24') break else: print('No Solutions')
# 6330376421 (20) 218 (2021-02-19 20:32) def calc(num1, op, num2): num1,num2=float(num1),float(num2) if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( nums.split(), '+-*/' ) for i in range(len(cases)): #print (cases[i]) if (cases[i][2]!='0' or cases[i][1]!='/')\ and (cases[i][4]!='0' or cases[i][3]!='/')\ and (cases[i][6]!='0' or cases[i][5]!='/')\ and calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) == 24: print("( (",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],'= 24') break elif (cases[i][5]!='/' or cases[i][6]!='0')\ and (cases[i][4]!='0' or cases[i][3]!='/')\ and (calc(cases[i][2],cases[i][3],cases[i][4])!=0 or cases[i][1]!='/')\ and calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) == 24: print("(",cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],cases[i][4],") )",cases[i][5],cases[i][6],'= 24') break elif (cases[i][2]!='0' or cases[i][1]!='/')\ and (cases[i][6]!='0' or cases[i][5]!='/')\ and (calc(cases[i][4],cases[i][5],cases[i][6])!=0 or cases[i][3]!='/')\ and calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) == 24: print("(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],") = 24") break elif (cases[i][4]!='0' or cases[i][3]!='/')\ and (cases[i][6]!='0' or cases[i][5]!='/')\ and (calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])!=0 or cases[i][1]!='/')\ and calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) == 24: print(cases[i][0],cases[i][1],'( (',cases[i][2],cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],") = 24") break elif (cases[i][6]!='0' or cases[i][5]!='/')\ and (calc(cases[i][4],cases[i][5],cases[i][6])!=0 or cases[i][3]!='/')\ and (calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))!=0 or cases[i][1]!='/')\ and calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) == 24: print(cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],") ) = 24") break else: print("No Solutions")
# 6330377021 (20) 219 (2021-02-22 15:06) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = 2 else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() nums[0] = int(nums[0]) nums[1] = int(nums[1]) nums[2] = int(nums[2]) nums[3] = int(nums[3]) cases = generate_all_combinations(nums, '+-*/' ) for i in cases: if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24: print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=','24') break elif calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) == 24: print('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'=','24') break elif calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) == 24: print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=','24') break elif calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) == 24: print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','=','24') break elif calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) == 24: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','=','24') break if cases.index(i) == len(cases) -1: print("No Solutions")
# 6330378721 (19.82) 220 (2021-02-21 14:24) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_strlist = (nums.split()) num_list = [] for i in num_strlist: num = int(i) num_list.append(num) operators = '+-*/' c = generate_all_combinations(num_list, operators) lastc = c[-1] r = False for i in c:# meth = i[::] if (meth[1] != '/' or meth[2] != 0) \ and (meth[3] != '/' or meth[4] != 0) \ and (meth[5] != '/' or meth[6] != 0)\ and calc(calc(calc(meth[0] ,meth[1],meth[2]),meth[3],meth[4]),meth[5],meth[6]) == 24 : print('(','(',meth[0],meth[1],meth[2],')',meth[3],meth[4],')',meth[5],meth[6],'=','24') r = True break if r == False: for i in c: meth = i[::] if (meth[3] != '/' or meth[4] != 0) \ and (meth[1] != '/' or (calc(meth[2] ,meth[3],meth[4]) != 0)) \ and (meth[5] != '/' or meth[6] != 0)\ and calc(calc(meth[0],meth[1],(calc(meth[2] ,meth[3],meth[4]))),meth[5],meth[6]) == 24 : print('(',meth[0],meth[1],'(',meth[2],meth[3],meth[4],')',')',meth[5],meth[6],'=','24') r = True break if r == False : for i in c: meth = i[::] if (meth[1] != '/' or meth[2] != 0) \ and (meth[5] != '/' or meth[6] != 0) \ and (meth[3] != '/' or (calc(meth[4],meth[5],meth[6]) != 0))\ and calc((calc(meth[0],meth[1],meth[2])),meth[3],(calc(meth[4],meth[5],meth[6]))) == 24 : print('(',meth[0],meth[1],meth[2],')',meth[3],'(',meth[4],meth[5],meth[6],')','=','24') r = True break if r == False : for i in c: meth = i[::] if (meth[3] != '/' or meth[4] != 0) \ and (meth[5] != '/' or meth[6] != 0) \ and (meth[1] != '/' or (calc(calc(meth[2],meth[3],meth[4]),meth[5],meth[6]) != 0)) \ and calc(meth[0],meth[1],(calc(calc(meth[2],meth[3],meth[4]),meth[5],meth[6]))) == 24 : print(meth[0],meth[1],'(','(',meth[2],meth[3],meth[4],')',meth[5],meth[6],')','=','24') r = True break if r == False : for i in c: meth = i[::] if (meth[5] != '/' or meth[6] != 0) \ and (meth[3] != '/' or (calc(meth[4],meth[5],meth[6]) != 0)) \ and (meth[1] != '/' or (calc(meth[2],meth[3],(calc(meth[4],meth[5],meth[6])))) != 0)\ and calc(meth[0],meth[1],(calc(meth[2],meth[3],(calc(meth[4],meth[5],meth[6]))))) == 24 : print(meth[0],meth[1],'(',meth[2],meth[3],'(',meth[4],meth[5],meth[6],')',')','=','24') r = True break if r == False : print('No Solution')
# 6330379321 (20) 221 (2021-02-21 22:49) def calc(num1,operation,num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') list_of_nums=nums.split() result='No Solutions' all_case=[] cases = generate_all_combinations( list_of_nums, '+-*/' ) for i in cases : if (i[1]=='/' and int(i[2])==0) or (i[3]=='/' and int(i[4])==0) or (i[5]=='/' and int(i[6])==0): continue else : A = calc(int(i[0]),i[1],int(i[2])) B = calc(A,i[3],int(i[4])) result = calc(B,i[5],int(i[6])) if result==24 : x=1 break if (i[3]=='/' and int(i[4])==0) or (i[5]=='/' and int(i[6])==0) : continue else : A = calc(int(i[2]),i[3],int(i[4])) if i[1]=='/' and A ==0 : continue else : B = calc(int(i[0]),i[1],A) result = calc(B,i[5],int(i[6])) if result==24 : x=2 break if (i[1]=='/' and int(i[2])==0) or (i[5]=='/' and int(i[6])==0) : continue else : A = calc(int(i[0]),i[1],int(i[2])) B = calc(int(i[4]),i[5],int(i[6])) if (i[3]=='/' and B==0) : continue else : result = calc(A,i[3],B) if result==24 : x=3 break if (i[3]=='/' and int(i[4])==0) or (i[5]=='/' and int(i[6])==0) : continue else : A = calc(int(i[2]),i[3],int(i[4])) B = calc(A,i[5],int(i[6])) if (i[1]=='/' and B==0) : continue else : result = calc(int(i[0]),i[1],B) if result==24 : x=4 break if (i[5]=='/' and int(i[6])==0) : continue else : A = calc(int(i[4]),i[5],int(i[6])) if (i[3]=='/' and A==0) : continue else: B = calc(int(i[2]),i[3],A) if (i[1]=='/' and B==0) : continue else : result = calc(int(i[0]),i[1],B) if result==24 : x=5 break if result==24 : if x==1 : print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=',24) if x==2 : print('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'=',24) if x==3 : print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=',24) if x==4 : print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','=',24) if x==5 : print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','=',24) if result != 24 : print('No Solutions') ...
# 6330380921 (13.8) 222 (2021-02-20 20:55) def calc(num1, op, num2): if op == '+': r = int(num1) + int(num2) elif op == '-': r = int(num1) - int(num2) elif op == '*': r = int(num1) * int(num2) elif op == '/': r = int(num1) / int(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() operators = '+-*/' cases = generate_all_combinations(num_list,operators) i=0 c=0 ans=1 #1 if ans==1: while i<=len(cases)-1: s = cases[i] if not(s[1]=='/' and s[2]=='0'): paren1 = (calc(s[0],s[1],s[2])) if not(s[3]=='/' and s[4]=='0'): paren2 = calc(paren1,s[3],s[4]) if not(s[5]=='/' and s[6]=='0'): sum1 = calc(paren2,s[5],s[6]) if sum1 == 24: print('( ' + '( ' +s[0]+' '+s[1]+' '+s[2]+ ' ) ' + s[3]+' ' +s[4]+ ' ) ' + s[5] +' '+s[6] + ' =',sum1) break else: i += 1 else: i +=1 else: i += 1 else: i += 1 else: ans +=1 #2 i=0 if ans==2: while i<=len(cases)-1: s = cases[i] if not(s[3]=='/' and s[4]=='0'): paren1 = calc(s[2],s[3],s[4]) if not(s[1]=='/' and int(paren1)==0): paren2 = calc(s[0],s[1],paren1) if not(s[5]=='/' and s[6]=='0'): sum1 = calc(paren2,s[5],s[6]) if sum1 == 24: print('( '+s[0]+' '+s[1]+' ( '+s[2]+' '+s[3]+' '+s[4]+' )'+' )'+' '+s[5]+' '+s[6] + ' =',sum1) break else: i += 1 else: i += 1 else: i += 1 else: i += 1 else: ans+=1 #3 i=0 if ans==3: while i<=len(cases)-1: s = cases[i] if not(s[1]=='/' and s[2]=='0'): paren1 = calc(s[0],s[1],s[2]) if not(s[5]=='/' and s[6]=='0'): paren2 = calc(s[4],s[5],s[6]) if not( s[3]=='/' and int(paren2)==0): sum1 = calc(paren1,s[3],paren2) if sum1 == 24: print('( '+s[0]+' '+s[1]+' '+s[2]+' ) '+s[3]+' ( '+s[4]+' '+s[5]+' '+s[6]+' )' + ' =',sum1) break else: i+=1 else: i+=1 else: i += 1 else: i += 1 else: ans += 1 #4 i=0 if ans==4: while i<=len(cases)-1: s = cases[i] if not(s[3]=='/' and s[4]=='0'): paren1 = calc(s[2],s[3],s[4]) if not(s[5]=='/' and s[6]=='0'): paren2 = calc(paren1,s[5],s[6]) if not(s[1]=='/' and int(paren2)==0): sum1 = calc(s[0],s[1],paren2) if sum1 == 24: print(s[0]+' '+s[1]+' '+'( '+'( '+s[2]+' '+s[3]+' '+s[4]+' )'+' '+s[5]+' '+s[6]+' )'+ ' =',sum1) break else: i+=1 else: i+=1 else: i+=1 else: i += 1 else: ans +=1 #5 i=0 if ans==5: while i<=len(cases)-1: s = cases[i] if not(s[5]=='/' and s[6] == '0'): paren1 = calc(s[4],s[5],s[6]) if not(s[3]=='/' and int(paren1)==0): paren2 = calc(s[2],s[3],paren1) if not(s[1]=='/' and int(paren2)==0): sum1 = calc(s[0],s[1],paren2) if sum1 == 24: print(s[0]+' '+s[1]+' ( '+s[2]+' '+s[3]+' ( '+s[4]+' '+s[5]+' '+s[6]+' )'+' )'+ ' =',sum1) break else: i += 1 else: i += 1 else: i += 1 else: i += 1 else: ans += 1 if (ans==6): print('No Solutions')
# 6330381521 (20) 223 (2021-02-21 23:07) def calc(num1, op, num2) : import math if op == "+" : r = num1 + num2 elif op == "-" : r = num1 - num2 elif op == "*" : r = num1 * num2 else : if num2 == 0 : r = math.inf else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = nums.split() cases = generate_all_combinations(a,"+-*/") for p in cases : if calc(calc(calc(int(p[0]),p[1],int(p[2])),p[3],int(p[4])),p[5],int(p[6])) == 24 : print("(","(",str(p[0]),str(p[1]),str(p[2]),")",str(p[3]),str(p[4]),")",str(p[5]),str(p[6]),"=","24") break elif calc(calc(int(p[0]),p[1],int(p[2])),p[3],calc(int(p[4]),p[5],int(p[6]))) == 24: print("(",str(p[0]),str(p[1]),str(p[2]),")",str(p[3]),"(",str(p[4]),str(p[5]),str(p[6]),")","=","24") break elif calc(int(p[0]),p[1],calc(int(p[2]),p[3],calc(int(p[4]),p[5],int(p[6])))) == 24: print(str(p[0]),str(p[1]),"(",str(p[2]),str(p[3]),"(",str(p[4]),str(p[5]),str(p[6]),")",")","=","24") break elif calc(calc(int(p[0]),p[1],calc(int(p[2]),p[3],int(p[4]))),p[5],int(p[6])) == 24: print("(",str(p[0]),str(p[1]),"(",str(p[2]),str(p[3]),str(p[4]),")",")",str(p[5]),str(p[6]),"=","24") break elif calc(int(p[0]),p[1],calc(calc(int(p[2]),p[3],int(p[4])),p[5],int(p[6]))) == 24: print(str(p[0]),str(p[1]),"(","(",str(p[2]),str(p[3]),str(p[4]),")",str(p[5]),str(p[6]),")","=","24") break else : print("No Solutions")
# 6330382121 (14) 224 (2021-02-20 00:13) def calc(num1, op, num2): if op == '+': r = int(num1) + int(num2) elif op == '-': r = int(num1) - int(num2) elif op == '*': r = int(num1) * int(num2) elif op == '/' and int(num2) != 0: r = int(num1) / int(num2) else: r = 0 return r def swap_case(no1, op1, no2, op2, no3, op3, no4): a = calc(calc(calc(no1, op1, no2), op2, no3), op3, no4) #A = '(', '(', no1, op1, no2, ')', op2, no3, ')', op3, no4 b = calc(calc(no1, op1, calc(no2, op2, no3)), op3, no4) #B = '(', no1, op1, '(', no2, op2, no3, ')', ')', op3, no4 c = calc(calc(no1, op1, no2), op2, calc(no3, op3, no4)) #C = '(', no1, op1, no2, ')', op2, '(', no3, op3, no4, ')' d = calc(no1, op1, calc(calc(no2, op2, no3), op3, no4)) #D = no1, op1, '(', '(', no2, op2, no3, ')', op3, no4, ')' e = calc(no1, op1, calc(no2, op2, calc(no3, op3, no4))) # E = no1, op1, '(', no2, op2, '(', no3, op3, no4, ')', ')' if a == 24: print('(', '(', no1, op1, no2, ')', op2, no3, ')', op3, no4, '=', '24') elif b == 24: print('(', no1, op1, '(', no2, op2, no3, ')', ')', op3, no4, '=', '24') elif c == 24: print('(', no1, op1, no2, ')', op2, '(', no3, op3, no4, ')', '=', '24') elif d == 24: print(no1, op1, '(', '(', no2, op2, no3, ')', op3, no4, ')', '=', '24') elif e == 24: print(no1, op1, '(', no2, op2, '(', no3, op3, no4, ')', ')', '=', '24') return [a, b, c, d, e] def swap_case2(no1, op1, no2, op2, no3, op3, no4): a = calc(calc(calc(no1, op1, no2), op2, no3), op3, no4) #A = '(', '(', no1, op1, no2, ')', op2, no3, ')', op3, no4 b = calc(calc(no1, op1, calc(no2, op2, no3)), op3, no4) #B = '(', no1, op1, '(', no2, op2, no3, ')', ')', op3, no4 c = calc(calc(no1, op1, no2), op2, calc(no3, op3, no4)) #C = '(', no1, op1, no2, ')', op2, '(', no3, op3, no4, ')' d = calc(no1, op1, calc(calc(no2, op2, no3), op3, no4)) #D = no1, op1, '(', '(', no2, op2, no3, ')', op3, no4, ')' e = calc(no1, op1, calc(no2, op2, calc(no3, op3, no4))) # E = no1, op1, '(', no2, op2, '(', no3, op3, no4, ')', ')' return [a, b, c, d, e] #--------------------------------------------------------- nums = input('Enter 4 integers: ') list_number = nums.split() cases = generate_all_combinations(list_number, '+-*/' ) for i in range(len(cases)): A = swap_case(cases[i][0], cases[i][1], cases[i][2], cases[i][3], cases[i][4], cases[i][5], cases[i][6]) if 24 in A: break C = [] for i in range(len(cases)): B = swap_case2(cases[i][0], cases[i][1], cases[i][2], cases[i][3], cases[i][4], cases[i][5], cases[i][6]) C = C + B if (24 in C) == False: print('No Solutions')
# 6330384421 (20) 225 (2021-02-22 01:03) def calc(num1, op, num2): if (num1 == 'infinity') or (num2 == 'infinity'):r = 'infinity' elif op == '+':r = num1 + num2 elif op == '-':r = num1 - num2 elif op == '*':r = num1 * num2 elif (op == '/') and (num2 != 0):r = num1 / num2 else :r='infinity' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() number = [] for n in nums: number.append(int(n)) cases = generate_all_combinations( number, '+-*/' ) for n in cases: n1=n[0];o1=n[1];n2=n[2];o2=n[3];n3=n[4];o3=n[5];n4=n[6] if calc(calc(calc(n1,o1,n2),o2,n3),o3,n4)==24:print('(', '(', n1, o1, n2, ')', o2, n3, ')', o3, n4, '= 24') elif calc(calc(n1,o1,calc(n2,o2,n3)),o3,n4)==24:print('(', n1, o1, '(', n2, o2, n3, ')', ')', o3, n4, '= 24') elif calc(calc(n1,o1,n2),o2,calc(n3,o3,n4))==24:print('(', n1, o1, n2, ')', o2, '(', n3, o3, n4, ')', '= 24') elif calc(n1,o1,calc(calc(n2,o2,n3),o3,n4))==24:print(n1, o1, '(', '(', n2, o2, n3, ')', o3, n4, ')', '= 24') elif calc(n1,o1,calc(n2,o2,calc(n3,o3,n4)))==24:print(n1, o1, '(', n2, o2, '(', n3, o3, n4, ')', ')', '= 24') if calc(calc(calc(n1,o1,n2),o2,n3),o3,n4)==24 or calc(calc(n1,o1,calc(n2,o2,n3)),o3,n4)==24 \ or calc(calc(n1,o1,n2),o2,calc(n3,o3,n4))==24 or calc(n1,o1,calc(calc(n2,o2,n3),o3,n4))==24 or \ calc(n1,o1,calc(n2,o2,calc(n3,o3,n4)))==24:break if not (calc(n1,o1,calc(n2,o2,calc(n3,o3,n4)))==24 or calc(calc(calc(n1,o1,n2),o2,n3),o3,n4)==24 or calc(calc(n1,o1,calc(n2,o2,n3)),o3,n4)==24 \ or calc(calc(n1,o1,n2),o2,calc(n3,o3,n4))==24 or calc(n1,o1,calc(calc(n2,o2,n3),o3,n4))==24 or \ calc(n1,o1,calc(n2,o2,calc(n3,o3,n4)))==24):print('No Solutions')
# 6330386721 (20) 226 (2021-02-22 22:16) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1*num2 elif op == '/': if num2 == 0: r = math.inf elif num2 != 0: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') list_nums = nums.split() a = list_nums[0] b = list_nums[1] c = list_nums[2] d = list_nums[3] cases = generate_all_combinations( [a,b,c,d], '+-*/' ) for e in cases: ans1 = calc(calc(calc(int(e[0]),e[1],int(e[2])),e[3],int(e[4])),e[5],int(e[6])) if ans1 == 24: print('(','(',int(e[0]),e[1],int(e[2]),')',e[3],int(e[4]),')',e[5],int(e[6]),'=','24') break ans2 = calc(calc(int(e[0]),e[1],calc(int(e[2]),e[3],int(e[4]))),e[5],int(e[6])) if ans2 == 24: print('(',int(e[0]),e[1],'(',int(e[2]),e[3],int(e[4]),')',')',e[5],int(e[6]),'=','24') break ans3 = calc(calc(int(e[0]),e[1],int(e[2])),e[3],calc(int(e[4]),e[5],int(e[6]))) if ans3 == 24: print('(',int(e[0]),e[1],int(e[2]),')',e[3],'(',int(e[4]),e[5],int(e[6]),')','=','24') break ans4 = calc(int(e[0]),e[1],calc(calc(int(e[2]),e[3],int(e[4])),e[5],int(e[6]))) if ans4 == 24: print(int(e[0]),e[1],'(','(',int(e[2]),e[3],int(e[4]),')',e[5],int(e[6]),')','=','24') break ans5 = calc(int(e[0]),e[1],calc(int(e[2]),e[3],calc(int(e[4]),e[5],int(e[6])))) if ans5 == 24: print(int(e[0]),e[1],'(',int(e[2]),e[3],'(',int(e[4]),e[5],int(e[6]),')',')','=','24') break else: print('No Solutions')
# 6330387321 (16) 227 (2021-02-20 20:08) def cal(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': r = num1 / num2 else: pass return r nums = input('Enter 4 integers: ') num = nums.split() num_list = [int(num[0]),int(num[1]),int(num[2]),int(num[3])] cases = generate_all_combinations( num_list, '+-*/' ) if cases[0][0] != cases[0][2] != cases[0][4] != cases[0][6] : for k in range (1,1537): if k % 64 == 4 or k % 64 == 8 or k % 64 == 12 or k % 64 == 20 or k % 64 == 24 or k % 64 == 28 or k % 64 == 36 or k % 64 == 40 or k % 64 == 44 and cases[k-1][6] == 0 : r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 13 or k % 64 == 14 or k % 64 == 15 or k % 64 == 29 or k % 64 == 30 or k % 64 == 31 or k % 64 == 45 or k % 64 == 46 or k % 64 == 47 : if cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 else: if cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 16 or k % 64 == 32 or k % 64 == 48 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 49 or k % 64 == 50 or k % 64 == 51 or k % 64 == 53 or k % 64 == 54 or k % 64 == 55 or k % 64 == 57 or k % 64 == 58 or k % 64 == 59 : if cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 52 or k % 64 == 56 or k % 64 == 60 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 61 or k % 64 == 62 or k % 64 == 63 : if cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 0 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[0][0] == cases[0][2] and cases[0][4] != cases[0][6] and cases[0][0] != cases[0][4] and cases[0][0] != cases[0][6] or cases[0][0] == cases[0][4] and cases[0][0] != cases[0][2] and cases[0][0] != cases[0][6] and cases[0][2] != cases[0][6] or cases[0][0] == cases[0][6] and cases[0][0] != cases[0][2] and cases[0][0] != cases[0][4] and cases[0][2] != cases[0][4] or cases[0][2] == cases[0][4] and cases[0][2] != cases[0][0] and cases[0][2] != cases[0][6] and cases[0][0] != cases[0][6] or cases[0][2] == cases[0][6] and cases[0][2] != cases[0][0] and cases[0][2] != cases[0][4] and cases[0][0] != cases[0][4] or cases[0][4] == cases[0][6] and cases[0][4] != cases[0][0] and cases[0][4] != cases[0][2] and cases[0][0] != cases[0][2]: for k in range (1,769): if k % 64 == 4 or k % 64 == 8 or k % 64 == 12 or k % 64 == 20 or k % 64 == 24 or k % 64 == 28 or k % 64 == 36 or k % 64 == 40 or k % 64 == 44 and cases[k-1][6] == 0 : r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 13 or k % 64 == 14 or k % 64 == 15 or k % 64 == 29 or k % 64 == 30 or k % 64 == 31 or k % 64 == 45 or k % 64 == 46 or k % 64 == 47 : if cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 else: if cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 16 or k % 64 == 32 or k % 64 == 48 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 49 or k % 64 == 50 or k % 64 == 51 or k % 64 == 53 or k % 64 == 54 or k % 64 == 55 or k % 64 == 57 or k % 64 == 58 or k % 64 == 59 : if cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 52 or k % 64 == 56 or k % 64 == 60 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 61 or k % 64 == 62 or k % 64 == 63 : if cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 0 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[0][0] == cases[0][2] and cases[0][4] == cases[0][6] and cases[0][0] != cases[0][4] or cases[0][0] == cases[0][4] and cases[0][2] == cases[0][6] and cases[0][0] != cases[0][2] or cases[0][0] == cases[0][6] and cases[0][2] == cases[0][4] and cases[0][0] != cases[0][2]: for k in range (1,385): if k % 64 == 4 or k % 64 == 8 or k % 64 == 12 or k % 64 == 20 or k % 64 == 24 or k % 64 == 28 or k % 64 == 36 or k % 64 == 40 or k % 64 == 44 and cases[k-1][6] == 0 : r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 13 or k % 64 == 14 or k % 64 == 15 or k % 64 == 29 or k % 64 == 30 or k % 64 == 31 or k % 64 == 45 or k % 64 == 46 or k % 64 == 47 : if cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 else: if cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 16 or k % 64 == 32 or k % 64 == 48 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 49 or k % 64 == 50 or k % 64 == 51 or k % 64 == 53 or k % 64 == 54 or k % 64 == 55 or k % 64 == 57 or k % 64 == 58 or k % 64 == 59 : if cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 52 or k % 64 == 56 or k % 64 == 60 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 61 or k % 64 == 62 or k % 64 == 63 : if cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 0 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[0][0] == cases[0][2] == cases[0][4] and cases[0][0] != cases[0][6] or cases[0][0] == cases[0][2] == cases[0][6] and cases[0][0] != cases[0][4] or cases[0][0] == cases[0][6] == cases[0][4] and cases[0][0] != cases[0][2] or cases[0][6] == cases[0][2] == cases[0][4] and cases[0][0] != cases[0][2] : for k in range (1,257): if k % 64 == 4 or k % 64 == 8 or k % 64 == 12 or k % 64 == 20 or k % 64 == 24 or k % 64 == 28 or k % 64 == 36 or k % 64 == 40 or k % 64 == 44 and cases[k-1][6] == 0 : r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 13 or k % 64 == 14 or k % 64 == 15 or k % 64 == 29 or k % 64 == 30 or k % 64 == 31 or k % 64 == 45 or k % 64 == 46 or k % 64 == 47 : if cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 else: if cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 16 or k % 64 == 32 or k % 64 == 48 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 49 or k % 64 == 50 or k % 64 == 51 or k % 64 == 53 or k % 64 == 54 or k % 64 == 55 or k % 64 == 57 or k % 64 == 58 or k % 64 == 59 : if cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 52 or k % 64 == 56 or k % 64 == 60 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 61 or k % 64 == 62 or k % 64 == 63 : if cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 0 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 else: for k in range (1,65): if k % 64 == 4 or k % 64 == 8 or k % 64 == 12 or k % 64 == 20 or k % 64 == 24 or k % 64 == 28 or k % 64 == 36 or k % 64 == 40 or k % 64 == 44 and cases[k-1][6] == 0 : r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 13 or k % 64 == 14 or k % 64 == 15 or k % 64 == 29 or k % 64 == 30 or k % 64 == 31 or k % 64 == 45 or k % 64 == 46 or k % 64 == 47 : if cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 else: if cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 16 or k % 64 == 32 or k % 64 == 48 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 49 or k % 64 == 50 or k % 64 == 51 or k % 64 == 53 or k % 64 == 54 or k % 64 == 55 or k % 64 == 57 or k % 64 == 58 or k % 64 == 59 : if cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 52 or k % 64 == 56 or k % 64 == 60 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 61 or k % 64 == 62 or k % 64 == 63 : if cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif k % 64 == 0 : if cases[k-1][6] == 0: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 elif cases[k-1][4] == 0: r1 = 0 r2 = 0 r4 = 0 elif cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]) == 0: r3 = 0 r5 = 0 elif cases[k-1][2] == 0: r1 = 0 r3 = 0 elif cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]) == 0: r2 = 0 elif cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) == 0: r4 = 0 elif cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) == 0: r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 else: r1 = cal(cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6]) if r1 == 24: break else: r2 = cal(cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cases[k-1][4])),cases[k-1][5],cases[k-1][6]) if r2 == 24: break else: r3 = cal(cal(cases[k-1][0],cases[k-1][1],cases[k-1][2]),cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6])) if r3 == 24: break else: r4 = cal(cases[k-1][0],cases[k-1][1],cal(cal(cases[k-1][2],cases[k-1][3],cases[k-1][4]),cases[k-1][5],cases[k-1][6])) if r4 == 24: break else: r5 = cal(cases[k-1][0],cases[k-1][1],cal(cases[k-1][2],cases[k-1][3],cal(cases[k-1][4],cases[k-1][5],cases[k-1][6]))) if r5 == 24: break else: r1 = 0 r2 = 0 r3 = 0 r4 = 0 r5 = 0 if r1 or r2 or r3 or r4 or r5 == 24: if r1 == 24: print("( ( "+str(cases[k-1][0])+" "+str(cases[k-1][1])+" "+str(cases[k-1][2])+" ) "+str(cases[k-1][3])+" "+str(cases[k-1][4])+" ) "+str(cases[k-1][5])+" "+str(cases[k-1][6])+" = 24") elif r2 == 24: print("( "+str(cases[k-1][0])+" "+str(cases[k-1][1])+" ( "+str(cases[k-1][2])+" "+str(cases[k-1][3])+" "+str(cases[k-1][4])+" ) ) "+str(cases[k-1][5])+" "+str(cases[k-1][6])+" = 24") elif r3 == 24: print("( "+str(cases[k-1][0])+" "+str(cases[k-1][1])+" "+str(cases[k-1][2])+" ) "+str(cases[k-1][3])+" ( "+str(cases[k-1][4])+" "+str(cases[k-1][5])+" "+str(cases[k-1][6])+" )"+" = 24") elif r4 == 24: print(str(cases[k-1][0])+" "+str(cases[k-1][1])+" ( ( "+str(cases[k-1][2])+" "+str(cases[k-1][3])+" "+str(cases[k-1][4])+" ) "+str(cases[k-1][5])+" "+str(cases[k-1][6])+" )"+" = 24") elif r5 == 24: print(str(cases[k-1][0])+" "+str(cases[k-1][1])+" ( "+str(cases[k-1][2])+" "+str(cases[k-1][3])+" ( "+str(cases[k-1][4])+" "+str(cases[k-1][5])+" "+str(cases[k-1][6])+" ) )"+" = 24") else: pass else: print("No Solutions")
# 6330388021 (17.82) 228 (2021-02-19 00:06) def calc(num1, op, num2): if num1 == None or num2==None : r =None elif op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2!=0 : r = num1 / num2 else : r = None return r def cal(l,n) : if n==1 : a=calc(calc(calc(l[0],l[1],l[2]),l[3],l[4]),l[5],l[6]) elif n==2 : a=calc(calc(l[0],l[1],calc(l[2],l[3],l[4])),l[5],l[6]) elif n==3 : a=calc(calc(l[0],l[1],l[2]),l[3],calc(l[4],l[5],l[6])) elif n==4 : a=calc(l[0],l[1],calc(calc(l[2],l[3],l[4]),l[5],l[6])) elif n==5 : a=calc(l[0],l[1],calc(l[2],l[3],calc(l[4],l[5],l[6]))) return a def ans(l,n): l=[str(i) for i in l] if n==1 : s=['(','(']+l[:3]+[')']+l[3:5]+[')']+l[5:]+['=','24'] elif n==2 : s ['(']+l[:2]+['(']+l[2:5]+[')',')']+l[5:]+['=','24'] elif n==3 : s=['(']+l[:3]+[')']+l[3:4]+['(']+l[4:]+[')','=','24'] elif n==4 : s=l[:2]+['(','(']+l[2:5]+[')']+l[5:]+[')','=','24'] elif n==5 : s=l[:2]+['(']+l[2:4]+['(']+l[4:]+[')',')','=','24'] ans=' '.join(s) return ans #--------------------------------------------------------- nums = input('Enter 4 integers: ') n=[int(i) for i in nums.split()] cases = generate_all_combinations( n, '+-*/' ) no=True for e in range(len(cases)) : for i in range(1,6): if cal(cases[e],i)==24 : print(ans(cases[e],i)) no=False break if not no : break if no: print('No Solution')
# 6330389621 (20) 229 (2021-02-21 12:12) def transform_to_int(nums): nums_list = nums.split() for i in range(len(nums_list)): nums_list[i] = int(nums_list[i]) return nums_list def cal(num1, op, num2): if op == "+": return num1 + num2 if op == "-": return num1 - num2 if op == "*": return num1 * num2 if op == "/": if num2 == 0: return 99999 return num1 / num2 def have_sol(case): # * return 1 - 5 means pattern 1 - 5 # * return None means "No Solution" # ! pattern 1 i = cal(case[0], case[1], case[2]) j = cal(i, case[3], case[4]) k = cal(j, case[5], case[6]) if k == 24: return 1 # ! pattern 2 i = cal(case[2], case[3], case[4]) j = cal(case[0], case[1], i) k = cal(j, case[5], case[6]) if k == 24: return 2 # ! pattern 3 i = cal(case[0], case[1], case[2]) j = cal(case[4], case[5], case[6]) k = cal(i, case[3], j) if k == 24: return 3 # ! pattern 4 i = cal(case[2], case[3], case[4]) j = cal(i, case[5], case[6]) k = cal(case[0], case[1], j) if k == 24: return 4 # ! pattern 5 i = cal(case[4], case[5], case[6]) j = cal(case[2], case[3], i) k = cal(case[0], case[1], j) if k == 24: return 5 return None def extract(cases): for case in cases: sol = have_sol(case) if sol is not None: return case, sol return case, None def transform_and_load(case, pattern): if pattern == 1: print( f"( ( {case[0]} {case[1]} {case[2]} ) {case[3]} {case[4]} ) {case[5]} {case[6]} = 24") elif pattern == 2: print( f"( {case[0]} {case[1]} ( {case[2]} {case[3]} {case[4]} ) ) {case[5]} {case[6]} = 24") elif pattern == 3: print( f"( {case[0]} {case[1]} {case[2]} ) {case[3]} ( {case[4]} {case[5]} {case[6]} ) = 24") elif pattern == 4: print( f"{case[0]} {case[1]} ( ( {case[2]} {case[3]} {case[4]} ) {case[5]} {case[6]} ) = 24") elif pattern == 5: print( f"{case[0]} {case[1]} ( {case[2]} {case[3]} ( {case[4]} {case[5]} {case[6]} ) ) = 24") def pipeline(cases): case, pattern = extract(cases) if pattern is not None: transform_and_load(case, pattern) else: print("No Solutions") #--------------------------------------------------------- nums = input('Enter 4 integers: ') # nums = "1 2 3 4" # nums = "13 2 13 13" nums_list = transform_to_int(nums) cases = generate_all_combination(nums_list, "+-*/") pipeline(cases)
# 6330391821 (20) 230 (2021-02-19 21:02) def case1(ex): if ex[1] == "+": a = int(ex[0])+int(ex[2]) elif ex[1] == "-": a = int(ex[0])-int(ex[2]) elif ex[1] == "*": a = int(ex[0])*int(ex[2]) elif ex[1] == "/": a = int(ex[0])/int(ex[2]) if ex[3] == "+": b = a+int(ex[4]) elif ex[3] == "-": b = a-int(ex[4]) elif ex[3] == "*": b = a*int(ex[4]) elif ex[3] == "/": b = a/int(ex[4]) if ex[5] == "+": c = b+int(ex[6]) elif ex[5] == "-": c = b-int(ex[6]) elif ex[5] == "*": c = b*int(ex[6]) elif ex[5] == "/": c = b/int(ex[6]) return c def case2(ex): if ex[3] == "+": a = int(ex[2])+int(ex[4]) elif ex[3] == "-": a = int(ex[2])-int(ex[4]) elif ex[3] == "*": a = int(ex[2])*int(ex[4]) elif ex[3] == "/": a = int(ex[2])/int(ex[4]) if ex[1] == "+": b = int(ex[0])+a elif ex[1] == "-": b = int(ex[0])-a elif ex[1] == "*": b = int(ex[0])*a elif ex[1] == "/": if a != 0: b = int(ex[0])/a else: b = 1e100000 if ex[5] == "+": c = b+int(ex[6]) elif ex[5] == "-": c = b-int(ex[6]) elif ex[5] == "*": c = b*int(ex[6]) elif ex[5] == "/": c = b/int(ex[6]) return c def case3(ex): if ex[1] == "+": a = int(ex[0])+int(ex[2]) elif ex[1] == "-": a = int(ex[0])-int(ex[2]) elif ex[1] == "*": a = int(ex[0])*int(ex[2]) elif ex[1] == "/": a = int(ex[0])/int(ex[2]) if ex[5] == "+": b = int(ex[4])+int(ex[6]) elif ex[5] == "-": b = int(ex[4])-int(ex[6]) elif ex[5] == "*": b = int(ex[4])*int(ex[6]) elif ex[5] == "/": b = int(ex[4])/int(ex[6]) if ex[3] == "+": c = a+b elif ex[3] == "-": c = a-b elif ex[3] == "*": c = a*b elif ex[3] == "/": if b != 0: c = a/b else: c =1e100000 return c def case4(ex): if ex[3] == "+": a = int(ex[2])+int(ex[4]) elif ex[3] == "-": a = int(ex[2])-int(ex[4]) elif ex[3] == "*": a = int(ex[2])*int(ex[4]) elif ex[3] == "/": a = int(ex[2])/int(ex[4]) if ex[5] == "+": b = a+int(ex[6]) elif ex[5] == "-": b = a-int(ex[6]) elif ex[5] == "*": b = a*int(ex[6]) elif ex[5] == "/": b = a/int(ex[6]) if ex[1] == "+": c = int(ex[0])+b elif ex[1] == "-": c = int(ex[0])-b elif ex[1] == "*": c = int(ex[0])*b elif ex[1] == "/": if b != 0: c = int(ex[0])/b else: c = 1e100000 return c def case5(ex): if ex[5] == "+": a = int(ex[4])+int(ex[6]) elif ex[5] == "-": a = int(ex[4])-int(ex[6]) elif ex[5] == "*": a = int(ex[4])*int(ex[6]) elif ex[5] == "/": a = int(ex[4])/int(ex[6]) if ex[3] == "+": b = int(ex[2])+a elif ex[3] == "-": b = int(ex[2])-a elif ex[3] == "*": b = int(ex[2])*a elif ex[3] == "/": if a != 0: b = int(ex[2])/a else: b = 1e100000 if ex[1] == "+": c = int(ex[0])+b elif ex[1] == "-": c = int(ex[0])-b elif ex[1] == "*": c = int(ex[0])*b elif ex[1] == "/": if b != 0: c = int(ex[0])/b else: c = 1e100000 return c #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = nums.split() cases = generate_all_combinations( n, '+-*/' ) for e in range(len(cases)): C = cases[e] if case1(C) == 24: print("(","(",C[0],C[1],C[2],")",C[3],C[4],")",C[5],C[6],"=","24") break elif case2(C) == 24: print("(",C[0],C[1],"(",C[2],C[3],C[4],")",")",C[5],C[6],"=","24") break elif case3(C) == 24: print("(",C[0],C[1],C[2],")",C[3],"(",C[4],C[5],C[6],")","=","24") break elif case4(C) == 24: print(C[0],C[1],"(","(",C[2],C[3],C[4],")",C[5],C[6],")","=","24") break elif case5(C) == 24: print(C[0],C[1],"(",C[2],C[3],"(",C[4],C[5],C[6],")",")","=","24") break if case1(C) != 24 and case2(C) != 24 and case3(C) != 24 and case4(C) != 24 and case5(C) != 24: print("No Solutions")
# 6330392421 (14) 231 (2021-02-18 10:06) def calc(num1, op, num2): if op == '+': r = int(num1) + int(num2) elif op == '-': r = int(num1) - int(num2) elif op == '*': r = int(num1) * int(num2) elif op == '/': if int(num2) != 0: r = int(num1) / int(num2) else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums , '+-*/' ) s = 0 for i in range(len(cases)): a = cases[i] s = calc(calc(calc((a[0]),a[1], a[2]), a[3], a[4]),a[5],a[6]) if s == 24: print('(','(',a[0], a[1], a[2],')',a[3],a[4],')',a[5],a[6],'=','24') break s = calc(calc(a[0],a[1],calc(a[2],a[3],a[4])),a[5],a[6]) if s == 24: print('(',a[0], a[1],'(', a[2],a[3],a[4],')',')',a[5],a[6],'=','24') break s = calc(calc(a[0],a[1],a[2]),a[3],calc(a[4],a[5],a[6])) if s == 24: print('(',a[0], a[1], a[2],')',a[3],'(',a[4],a[5],a[6],')','=','24') break s = calc(a[0],a[1],calc(calc(a[2],a[3],a[4]),a[5],a[6])) if s == 24: print(a[0], a[1],'(','(', a[2], a[3], a[4],')',a[5],a[6],')','=','24') break s = calc(a[0],a[1],calc(a[2],a[3],calc(a[4],a[5],a[6]))) if s == 24: print(a[0], a[1],'(', a[2], a[3],'(', a[4],a[5],a[6],')',')','=','24') break if s != 24: print('No Solutions')
# 6330393021 (18.6) 232 (2021-02-22 23:42) def cal(num1, num2, operation) : if operation == '+' : return num1 + num2 elif operation == '-' : return num1 - num2 elif operation == '*' : return num1 * num2 elif operation == '/' : if(num2!=0) : return num1 / num2 else : return -1 #--------------------------------------------------------- nums = input('Enter 4 integers: ') result = "" cases = generate_all_combinations( [int(num) for num in nums.split()], '+-*/' ) for case in cases : cal1 = cal(cal((cal(case[0],case[2],case[1])),case[4],case[3]),case[6],case[5]) #print(cal1) cal2 = cal(cal(case[0],cal(case[2],case[4],case[3]),case[1]),case[6],case[5]) #print(cal2) cal3 = cal(cal(case[0],case[2],case[1]),cal(case[4],case[6],case[5]),case[3]) #print(cal3) cal4 = cal(case[0],cal(cal(case[2],case[4],case[3]),case[6],case[5]),case[1]) cal5 = cal(case[0],cal(case[2],cal(case[4],case[6],case[5]),case[3]),case[1]) if(cal1 == 24) : result = "(( "+str(case[0])+" "+case[1]+" "+str(case[2])+" ) "+case[3]+" "+str(case[4])+" ) "+case[5]+" "+str(case[6])+ " = 24" break if(cal2 == 24) : result = "( "+str(case[0])+" "+case[1]+" ( "+str(case[2])+" "+case[3]+" "+str(case[4])+" )) "+case[5]+" "+str(case[6])+ " = 24" break if(cal3 == 24) : result = "( " + str(case[0])+" " + case[1] +" "+ str(case[2]) +" ) " + case[3] + " ( " + str(case[4]) +" "+ case[5] + " "+str(case[6])+" )"+ " = 24" break if(cal4 == 24) : result = str(case[0]) + " " + case[1] + " (( " + str(case[2]) + " " + case[3] + " " +str(case[4])+" ) "+case[5]+" "+str(case[6])+" )"+ " = 24" break if(cal5 == 24) : result = str(case[0]) + " " + case[1] + " ( " + str(case[2]) +" "+ case[3] + " ( " + str(case[4]) + " " + case[5] + " " + str(case[6]) + " ))"+ " = 24" break if(result == "") : print("No Solutions") else : print(result)
# 6330394721 (20) 233 (2021-02-22 01:47) nums = input('Enter 4 integers: ') l=nums.split() a=generate_all_combinations(l,"+-*/") k=0 try: for i in range(0,1536): c=a[i] s1="( ("+" "+c[0]+" "+c[1]+" "+c[2]+" )"+" "+c[3]+" "+c[4]+" )"+" "+c[5]+" "+c[6] s2="("+" "+c[0]+" "+c[1]+" "+"("+" "+c[2]+" "+c[3]+" "+c[4]+" ) )"+" "+c[5]+" "+c[6] s3="( "+" "+c[0]+" "+c[1]+" "+c[2]+" )"+" "+c[3]+" "+"("+" "+c[4]+" "+c[5]+" "+c[6]+" )" s4=c[0]+" "+c[1]+" "+"( ("+" "+c[2]+" "+c[3]+" "+c[4]+" )"+" "+c[5]+" "+c[6]+" )" s5=c[0]+" "+c[1]+" ("+" "+c[2]+" "+c[3]+" ("+" "+c[4]+" "+c[5]+" "+c[6]+" "+") )" try: if eval(s1)==24: print(s1+" = 24") k+=1 break elif eval(s2)==24: print(s2+" = 24") k+=1 break elif eval(s3)==24: print(s3+" = 24") k+=1 break elif eval(s4)==24: print(s4+" = 24") k+=1 break elif eval(s5)==24: print(s5+" = 24") k+=1 break except: pass except:pass if k==0: print("No Solutions")
# 6330395321 (16) 234 (2021-02-22 21:32) def calc(num1, op, num2): s = True if num1 == 'error' or num2 == 'error': r = 'error' elif op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if float(num2) == 0.0 or int(num2) == 0: s = False else: r = int(num1) / int(num2) if s == False : r = 'error' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations(nums.split(), '+-*/' ) n = 0 for case in cases : if calc(calc(calc(case[0],case[1],case[2]),case[3],case[4]),case[5],case[6]) == 24: print('(','(',case[0],case[1],case[2],')',case[3],case[4],')',case[5],case[6],'=','24') break if calc(calc(case[0],case[1],calc(case[2],case[3],case[4])),case[5],case[6]) == 24: print('(',case[0],case[1],'(',case[2],case[3],case[4],')',')',case[5],case[6],'=','24') break if calc(case[0],case[1],(calc(case[2],case[3],calc(case[4],case[5],case[6])))) == 24: print(case[0],case[1],'(',case[2],case[3],'(',case[4],case[5],case[6],')',')','=','24') break if calc(case[0],case[1],calc(calc(case[2],case[3],case[4]),case[5],case[6])) == 24: print(case[0],case[1],'(','(',case[2],case[3],case[4],')',case[5],case[6],')','=','24') break if calc(calc(case[0],case[1],case[2]),case[3],calc(case[4],case[5],case[6])) == 24: print('(',case[0],case[1],case[2],')',case[3],'(',case[4],case[5],case[6],')','=','24') break n += 1 if cases.index(case) == len(cases)-1: print("No Solutions")
# 6330396021 (12) 235 (2021-02-22 10:20) def calc(num1, operators, num2): r = 0 if operators == '+': r = num1 + num2 elif operators == '-': r = num1 - num2 elif operators == '*': r = num1*num2 elif operators == '/': r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_split = [int(e) for e in nums.split()] cases = generate_all_combinations( nums_split, '+-*/' ) for i in range(len(cases)): check = cases[i] for n in range(5): if n == 0 : if check[1] == "/" and check[2] == "0" : continue try : a1 = calc(check[0],check[1],check[2]) except ZeroDivisionError: continue if check[3] == "/" and check[4] == "0": continue try : a2 = calc(a1,check[3],check[4]) except ZeroDivisionError: continue if check[5] == "/" and check[6] == "0": continue try : a3 = calc(a2,check[5],check[6]) except ZeroDivisionError: continue if a3 == 24 : print("(","(",check[0],check[1],check[2],")",check[3],check[4],")",check[5],check[6],"=",24) break if n == 1 : if check[3] == "/" and check[4] == 0: continue try : a1 = calc(check[2],check[3],check[4]) except ZeroDivisionError: continue if check[1] == "/" and a1 == 0 : continue try : a2 = calc(a1,check[1],check[0]) except ZeroDivisionError: continue if check[5] == "/" and check[6] == 0 : continue try : a3 = calc(a2,check[5],check[6]) except ZeroDivisionError: continue a3 = calc(a2,check[5],check[6]) if a3 == 24 : print("(",check[0],check[1],"(",check[2],check[3],check[4],")",")",check[5],check[6],"=",24) break if n == 2 : if check[1] == "/" and check[2] == 0: continue try : a1 = calc(check[0],check[1],check[2]) except ZeroDivisionError: continue if check[3] == "/" and check[4] == 0 : continue try : a2 = calc(check[4],check[5],check[6]) except ZeroDivisionError: continue if check[5] == "/" and check[6] == 0 : continue try : a3 = calc(a1,check[3],a2) except ZeroDivisionError: continue if a3 == 24 : print("(",check[0],check[1],check[2],")",check[3],"(",check[4],check[5],check[6],")","=",24) break if n == 3 : if check[3] == "/" and check[4] == 0: continue try : a1 = calc(check[2],check[3],check[4]) except ZeroDivisionError: continue if check[5] == "/" and check[6] == 0 : continue try : a2 = calc(a1,check[5],check[6]) except ZeroDivisionError: continue if check[1] == "/" and a2 == 0 : continue try : a3 = calc(a2,check[1],check[0]) except ZeroDivisionError: continue if a3 == 24 : print(check[0],check[1],"(","(",check[2],check[3],check[4],")",check[5],check[6],")","=",24) break if n == 4 : if check[5] == "/" and check[6] == 0: continue try : a1 = calc(check[4],check[5],check[6]) except ZeroDivisionError: continue if check[3] == "/" and a1 == 0 : continue try : a2 = calc(check[2],check[3],a1) except ZeroDivisionError: continue if check[1] == "/" and a2 == 0 : continue try : a3 = calc(a2,check[1],check[0]) except ZeroDivisionError: continue a3 = calc(a2,check[1],check[0]) if a3==24 : print(check[0],check[1],"(",check[2],check[3],"(",check[4],check[5],check[6],")",")","=",24) break if a3 == 24 : break else : print("No Solutions")
# 6330397621 (20) 236 (2021-02-22 22:42) def calc(num1, op, num2) : import math if op == "+" : r = num1 + num2 elif op == "-" : r = num1 - num2 elif op == "*" : r = num1 * num2 else : if num2 == 0 : r = math.inf else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [] for n in (nums.split()): num = int(n) num_list.append(num) operators = '+-*/' cases = generate_all_combinations(num_list, operators) r = False for n in cases: x = n[::] if calc(calc(calc(x[0] ,x[1],x[2]),x[3],x[4]),x[5],x[6]) == 24 : print('(','(',x[0],x[1],x[2],')',x[3],x[4],')',x[5],x[6],'=','24') r = True break if r == False: for n in cases: x = n[::] if calc(calc(x[0],x[1],(calc(x[2] ,x[3],x[4]))),x[5],x[6]) == 24 : print('(',x[0],x[1],'(',x[2],x[3],x[4],')',')',x[5],x[6],'=','24') r = True break if r == False : for n in cases: x = n[::] if calc((calc(x[0],x[1],x[2])),x[3],(calc(x[4],x[5],x[6]))) == 24 : print('(',x[0],x[1],x[2],')',x[3],'(',x[4],x[5],x[6],')','=','24') r = True break if r == False : for n in cases: x = n[::] if calc(x[0],x[1],(calc(calc(x[2],x[3],x[4]),x[5],x[6]))) == 24 : print(x[0],x[1],'(','(',x[2],x[3],x[4],')',x[5],x[6],')','=','24') r = True break if r == False : for n in cases: x = n[::] if calc(x[0],x[1],(calc(x[2],x[3],(calc(x[4],x[5],x[6]))))) == 24 : print(x[0],x[1],'(',x[2],x[3],'(',x[4],x[5],x[6],')',')','=','24') r = True break if r == False : print('No Solutions')
# 6330398221 (20) 237 (2021-02-21 13:03) def cal(n1,n2,operations): if operations=='+': ans=n1+n2 elif operations=='-': ans=n1-n2 elif operations=='*': ans=n1*n2 elif operations=='/': ans=n1/n2 return ans #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = nums.split() #แยกเลข num0=int(num[0]);num1=int(num[1]);num2=int(num[2]);num3=int(num[3]) x=[num0,num1,num2,num3] #เก็บค่าในlist op='+-*/' sent='' cases = generate_all_combinations(x, op) for i in range(len(cases)): y=cases[i] try: #กัน กรณีที่เจอส่วนเป็น0 c=cal(y[0],y[2],y[1]) c1=cal(c,y[4],y[3]) c2=cal(c1,y[6],y[5]) except: pass if c2==24: sent='( ( '+str(y[0])+' '+str(y[1])+' '+str(y[2])+' ) '+str(y[3])+' '+str(y[4])+' ) '+str(y[5])+' '+str(y[6])+' = 24' break else: try:#กัน กรณีที่เจอส่วนเป็น0 c=cal(y[2],y[4],y[3]) c1=cal(y[0],c,y[1]) c2=cal(c1,y[6],y[5]) except: pass if c2==24: sent='( '+str(y[0])+' '+str(y[1])+' ( '+str(y[2])+' '+str(y[3])+' '+str(y[4])+' ) ) '+str(y[5])+' '+str(y[6])+' = 24' break else: try:#กัน กรณีที่เจอส่วนเป็น0 c=cal(y[0],y[2],y[1]) c1=cal(y[4],y[6],y[5]) c2=cal(c,c1,y[3]) except: pass if c2==24: sent='( '+str(y[0])+' '+str(y[1])+' '+str(y[2])+' ) '+str(y[3])+' ( '+str(y[4])+' '+str(y[5])+' '+str(y[6])+' )'+' = 24' break else: try:#กัน กรณีที่เจอส่วนเป็น0 c=cal(y[2],y[4],y[3]) c1=cal(c,y[6],y[5]) c2=cal(y[0],c1,y[1]) except: pass if c2==24: sent=str(y[0])+' '+str(y[1])+' ( ( '+str(y[2])+' '+str(y[3])+' '+str(y[4])+' ) '+str(y[5])+' '+str(y[6])+' )'+' = 24' break else: try:#กัน กรณีที่เจอส่วนเป็น0 c=cal(y[4],y[6],y[5]) c1=cal(y[2],c,y[3]) c2=cal(y[0],c1,y[1]) except: pass if c2==24: sent=str(y[0])+' '+str(y[1])+' ( '+str(y[2])+' '+str(y[3])+' ( '+str(y[4])+' '+str(y[5])+' '+str(y[6])+' ) )'+' = 24' break else: sent='No Solutions' print(sent)
# 6330399921 (20) 238 (2021-02-18 16:23) def cl(num1,op,num2): num1=float(num1) num2=float(num2) if op=='+': cal=num1+num2 elif op=='-': cal=num1-num2 elif op=='*': cal=num1*num2 else : if num2==0: cal=10000000000000000000000000000000000000 else: cal=num1/num2 return cal #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = nums.split(' ') case = generate_all_combinations( n, '+-*/' ) for x in case: sol1=cl(cl(cl(x[0],x[1],x[2]),x[3],x[4]),x[5],x[6]) sol2=cl(cl(x[0],x[1],cl(x[2],x[3],x[4])),x[5],x[6]) sol3=cl(cl(x[0],x[1],x[2]),x[3],cl(x[4],x[5],x[6])) sol4=cl(x[0],x[1],cl(cl(x[2],x[3],x[4]),x[5],x[6])) sol5=cl(x[0],x[1],cl(x[2],x[3],cl(x[4],x[5],x[6]))) if sol1 == 24: print('(','(',x[0],x[1],x[2],')',x[3],x[4],')',x[5],x[6],'= 24') break elif sol2 == 24: print('(',x[0],x[1],'(',x[2],x[3],x[4],')',')',x[5],x[6],'= 24') break elif sol3 == 24: print('(',x[0],x[1],x[2],')',x[3],'(',x[4],x[5],x[6],')','= 24') break elif sol4 == 24: print(x[0],x[1],'(','(',x[2],x[3],x[4],')',x[5],x[6],')','= 24') break elif sol5 == 24: print(x[0],x[1],'(',x[2],x[3],'(',x[4],x[5],x[6],')',')','= 24') break if not (sol1 == 24 or sol2 == 24 or sol3 == 24 or sol4 == 24 or sol5 == 24): print('No Solutions')
# 6330400821 (19.6) 239 (2021-02-20 12:13) def calc(num1,op,num2): global r if op == "+": r = num1+num2 elif op == "-": r = num1-num2 elif op == "*": r = num1 * num2 elif op == "/" and num2 != 0: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') number = nums.split() cases = generate_all_combinations(number, '+-*/') i = 0 while i < len(cases) : U = cases[i] for a in range(0,7,2) : U[a] = int(U[a]) k = calc(U[0], str(U[1]), U[2]) q = calc(U[2], str(U[3]), U[4]) e = calc(U[4], str(U[5]), U[6]) if calc(calc(k, str(U[3]), U[4]), str(U[5]), U[6]) == 24: for a in range(0, 7, 2): U[a] = str(U[a]) s = " ".join(U) s_1 = "(" + " " + "(" + " " + U[0] + " " + U[1] + " " + U[2] + " "+ ")" + " "+ U[3] + " "+ U[4] + " " + ")" + " " + U[5] + " " + U[6] print(s_1,"=","24") break elif calc(calc(U[0], str(U[1]), q), str(U[5]), U[6]) == 24: for a in range(0, 7, 2): U[a] = str(U[a]) s = " ".join(U) s_1 = "(" + " " + U[0] + " " + U[1] + " " + "(" + " " + U[2] + " " + U[3] + " " + U[4] + " " + ")" + " " + ")" + " " + U[5] + " " + U[6] print(s_1,"=","24") break elif calc(k, str(U[3]), e) == 24: for a in range(0, 7, 2): U[a] = str(U[a]) s = " ".join(U) s_1 = "(" + " " + U[0] + " " + U[1] + " " + U[2] + " " + ")" + " " + U[3] + " " + "(" + " " + U[4] + " " + U[5] + " "+ U[6] + " "+ ")" print(s_1,"=","24") break elif calc(U[0], str(U[1]), calc(q, str(U[5]), U[6])) == 24: for a in range(0, 7, 2): U[a] = str(U[a]) s = " ".join(U) s_1 = U[0] + " " + U[1] + " " + "(" + " " + "(" + " " + U[2] + " " + U[3] + " " + U[4] + ")" + " " + U[5] + " " + U[6] + " " + ")" print(s_1,"=","24") break elif calc(U[0], str(U[1]), calc(U[2], str(U[3]), e)) == 24 : for a in range(0, 7, 2): U[a] = str(U[a]) s = " ".join(U) s_1 = U[0] + " " + U[1] + " " + "(" + " " + U[2] + " " + U[3] + "(" + " " + U[4] + " " + U[5] + " " + U[6] + " " + ")" + " " + ")" print(s_1,"=","24") break else : if i == len(cases) - 1 : print("No Solutions") i += 1
# 6330401421 (20) 240 (2021-02-21 22:45) def calc(num1,op1,num2): if op1 == '+': return num1 + num2 elif op1 == '-': return num1 - num2 elif op1 == '*': return num1 * num2 elif op1 == '/': if num2 == 0: return int(99999999999) return num1 / num2 #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(i) for i in nums.split()] cases = generate_all_combinations(num_list,'+-*/') for e in cases: # case1 a = calc(e[0],e[1],e[2]) b = calc(a,e[3],e[4]) c = calc(b,e[5],e[6]) if c == 24: print('(','(',e[0],e[1],e[2],')',e[3],e[4],')',e[5],e[6],'= 24') break # case2 a =calc(e[2],e[3],e[4]) b =calc(e[0],e[1],a) c =calc(b,e[5],e[6]) if c == 24: print('(',e[0],e[1],'(',e[2],e[3],e[4],')',')',e[5],e[6],'= 24') break # case3 a =calc(e[0],e[1],e[2]) b =calc(e[4],e[5],e[6]) c =calc(a,e[3],b) if c == 24: print('(',e[0],e[1],e[2],')',e[3],'(',e[4],e[5],e[6],')','= 24') break # case4 a =calc(e[2],e[3],e[4]) b =calc(a,e[5],e[6]) c =calc(e[0],e[1],b) if c == 24: print(e[0],e[1],'(','(',e[2],e[3],e[4],')',e[5],e[6],')','= 24') break # case5 a =calc(e[4],e[5],e[6]) b =calc(e[2],e[3],a) c =calc(e[0],e[1],b) if c == 24: print(e[0],e[1],'(',e[2],e[3],'(',e[4],e[5],e[6],')',')','= 24') break if c != 24: print("No Solutions")
# 6330402021 (20) 241 (2021-02-19 19:22) def calc(num1,op,num2): if op == "+": r = num1 + num2 elif op == "-": r = num1 - num2 elif op == "*": r = num1 * num2 elif op == "/": if num2 != 0: r = num1 / num2 else: r = 0 return r def rancl(x): x1 = ["(","(",str(x[0]),str(x[1]),str(x[2]),")",str(x[3]),str(x[4]),")",str(x[5]),str(x[6])] ans1 = calc(calc(calc(x[0],x[1],x[2]),x[3],x[4]),x[5],x[6]) x2 = ["(",str(x[0]),str(x[1]),"(",str(x[2]),str(x[3]),str(x[4]),")",")",str(x[5]),str(x[6])] ans2 = calc(calc(x[0],x[1],calc(x[2],x[3],x[4])),x[5],x[6]) x3 = ["(",str(x[0]),str(x[1]),str(x[2]),")",str(x[3]),"(",str(x[4]),str(x[5]),str(x[6]),")"] ans3 = calc(calc(x[0],x[1],x[2]),x[3],calc(x[4],x[5],x[6])) x4 = [str(x[0]),str(x[1]),"(","(",str(x[2]),str(x[3]),str(x[4]),")",str(x[5]),str(x[6]),")"] ans4 = calc(x[0],x[1],calc(calc(x[2],x[3],x[4]),x[5],x[6])) x5 = [str(x[0]),str(x[1]),"(",str(x[2]),str(x[3]),"(",str(x[4]),str(x[5]),str(x[6]),")",")"] ans5 = calc(x[0],x[1],calc(x[2],x[3],calc(x[4],x[5],x[6]))) return x1,x2,x3,x4,x5,ans1,ans2,ans3,ans4,ans5 #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.strip().split()] cases = generate_all_combinations( num_list , '+-*/' ) for i in cases : x1,x2,x3,x4,x5,ans1,ans2,ans3,ans4,ans5 = rancl(i) if ans1 == 24: print(" ".join(x1),"=",24) break elif ans2 == 24: print(" ".join(x2),"=",24) break elif ans3 == 24: print(" ".join(x3),"=",24) break elif ans4 == 24: print(" ".join(x4),"=",24) break elif ans5 == 24: print(" ".join(x5),"=",24) break elif i == cases[-1]: print("No Solutions")
# 6330403721 (20) 242 (2021-02-21 16:38) #((--)-)- def calc1(num1, op1, num2, op2, num3, op3, num4): if op1 == '+': r1 = num1 + num2 elif op1 == '-': r1 = num1 - num2 elif op1 == '*': r1 = num1 * num2 elif op1 == '/': try: r1 = num1 / num2 except: r1 = 100000 if op2 == '+': r2 = r1 + num3 elif op2 == '-': r2 = r1 - num3 elif op2 == '*': r2 = r1 * num3 elif op2 == '/': try: r2 = r1 / num3 except: r2 = 100000 if op3 == '+': r3 = r2 + num4 elif op3 == '-': r3 = r2 - num4 elif op3 == '*': r3 = r2 * num4 elif op3 == '/': try: r3 = r2 / num4 except: r3 = 100000 return r3 #(-(--))- def calc2(num1, op1, num2, op2, num3, op3, num4): if op2 == '+': r1 = num2 + num3 elif op2 == '-': r1 = num2 - num3 elif op2 == '*': r1 = num2 * num3 elif op2 == '/': try: r1 = num2 / num3 except: r1 = 100000 if op1 == '+': r2 = num1 + r1 elif op1 == '-': r2 = num1 - r1 elif op1 == '*': r2 = num1 * r1 elif op1 == '/': try: r2 = num1 / r1 except: r2 = 100000 if op3 == '+': r3 = r2 + num4 elif op3 == '-': r3 = r2 - num4 elif op3 == '*': r3 = r2 * num4 elif op3 == '/': try: r3 = r2 / num4 except: r3 = 100000 return r3 #(--)(--) def calc3(num1, op1, num2, op2, num3, op3, num4): if op1 == '+': r1 = num1 + num2 elif op1 == '-': r1 = num1 - num2 elif op1 == '*': r1 = num1 * num2 elif op1 == '/': try: r1 = num1 / num2 except: r1 = 100000 if op3 == '+': r2 = num3 + num4 elif op3 == '-': r2 = num3 - num4 elif op3 == '*': r2 = num3 * num4 elif op3 == '/': try: r2 = num3 / num4 except: r2 = 100000 if op2 == '+': r3 = r1 + r2 elif op2 == '-': r3 = r1 - r2 elif op2 == '*': r3 = r1 * r2 elif op2 == '/': try: r3 = r1 / r2 except: r3 = 100000 return r3 #-((--)-) def calc4(num1, op1, num2, op2, num3, op3, num4): if op2 == '+': r1 = num2 + num3 elif op2 == '-': r1 = num2 - num3 elif op2 == '*': r1 = num2 * num3 elif op2 == '/': try: r1 = num2 / num3 except: r1 = 100000 if op3 == '+': r2 = r1 + num4 elif op3 == '-': r2 = r1 - num4 elif op3 == '*': r2 = r1 * num4 elif op3 == '/': try: r2 = r1 / num4 except: r2 = 100000 if op1 == '+': r3 = num1 + r2 elif op1 == '-': r3 = num1 - r2 elif op1 == '*': r3 = num1 * r2 elif op1 == '/': try: r3 = num1 / r2 except: r3 = 100000 return(r3) #-(-(--)) def calc5(num1, op1, num2, op2, num3, op3, num4): if op3 == '+': r1 = num3 + num4 elif op3 == '-': r1 = num3 - num4 elif op3 == '*': r1 = num3 * num4 elif op3 == '/': try: r1 = num3 / num4 except: r1 = 100000 if op2 == '+': r2 = num2 + r1 elif op2 == '-': r2 = num2 - r1 elif op2 == '*': r2 = num2 * r1 elif op2 == '/': try: r2 = num2 / r1 except: r2 = 100000 if op1 == '+': r3 = num1 + r2 elif op1 == '-': r3 = num1 - r2 elif op1 == '*': r3 = num1 * r2 elif op1 == '/': try: r3 = num1 / r2 except: r3 = 100000 return(r3) #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_list = [int(e) for e in nums.split()] cases = generate_all_combinations( nums_list, '+-*/' ) i = 0 while i < len(cases): m = cases[i] num1 = m[0] num2 = m[2] num3 = m[4] num4 = m[6] op1 = m[1] op2 = m[3] op3 = m[5] if calc1(num1, op1, num2, op2, num3, op3, num4) == 24: print('('+' '+'('+' '+str(m[0])+' '+op1+' '+str(m[2])+' '+')'+' '+op2+' '+str(m[4])+' '+')'+' '+op3+' '+str(m[6])+' = 24') break elif calc2(num1, op1, num2, op2, num3, op3, num4) == 24: print('('+' '+str(m[0])+' '+op1+' '+'('+' '+str(m[2])+' '+op2+' '+str(m[4])+' '+')'+' '+')'+' '+op3+' '+str(m[6])+' = 24') break elif calc3(num1, op1, num2, op2, num3, op3, num4) == 24: print('('+' '+str(m[0])+' '+op1+' '+str(m[2])+' '+')'+' '+op2+' '+'('+' '+str(m[4])+' '+op3+' '+str(m[6])+' '+')'+' = 24') break elif calc4(num1, op1, num2, op2, num3, op3, num4) == 24: print(str(m[0])+' '+op1+' '+'('+' '+'('+' '+str(m[2])+' '+op2+' '+str(m[4])+' '+')'+' '+op3+' '+str(m[6])+' '+')'+' = 24') break elif calc5(num1, op1, num2, op2, num3, op3, num4) == 24: print(str(m[0])+' '+op1+' '+'('+' '+str(m[2])+' '+op2+' '+'('+' '+str(m[4])+' '+op3+' '+str(m[6])+' '+')'+' '+')'+' = 24') break else: i += 1 else: print('No Solutions')
# 6330404321 (20) 243 (2021-02-21 17:21) #--------------------------------------------------------- operators='+-*/' num_list=[int(e) for e in input('Enter 4 integers: ').split()] cases = generate_all_combinations( num_list, operators ) a=0 b=0 c=0 d=0 x='' y='' z='' t=0 found=0 s=0 for e in cases : for i in range(1,6) : if found==0: x=e[1] y=e[3] z=e[5] a = float(e[0]) b = float(e[2]) c = float(e[4]) d = float(e[6]) if i==1: if x=='+': t=(a+b) elif x=='-': t=a-b elif x=='*': t=a*b if b==0: break else: if x=='/': t=a/b if y=='+': t+=c elif y=='-': t-=c elif y=='*': t*=c if c==0: break else: if y=='/': t/=c if z=='+': t+=d elif z=='-': t-=d elif z=='*': t*=d if d==0: break else: if z=='/': t/=d if t==24: found=1 else: t=0 if i==2: if y=='+': t=b+c elif y=='-': t=b-c elif y=='*': t=b*c if c==0: break else: if y=='/': t=b/c if x=='+': t=a+t elif x=='-': t=a-t elif x=='*': t=a*t if t==0: break else: if x=='/': t=a/t if z=='+': t=t+d elif z=='-': t=t-d elif z=='*': t=t*d if d==0: break else: if z=='/': t=t/d if t==24: found=2 else: t=0 if i==3: if x=='+': t=a+b elif x=='-': t=a-b elif x=='*': t=a*b if b==0: break else: if x=='/': t=a/b if z=='+': s=c+d elif z=='-': s=c-d elif x=='*': s=c*d if d==0: break else: if z=='/': s=c/d if y=='+': t=t+s elif y=='-': t=t-s elif y=='*': t=t*s if s==0: break else: if y=='/': t=t/s if t==24: found=3 else: t=0 s=0 if i==4: if y=='+': t=b+c elif y=='-': t=b-c elif y=='*': t=b*c if c==0: break else: if y=='/': t=b/c if z=='+': t=t+d elif z=='-': t=t-d elif z=='*': t=t*d if d==0: break else: if z=='/': t=t/d if x=='+': t=a+t elif x=='-': t=a-t elif x=='*': t=a*t if t==0: break else: if x=='/': t=a/t if t==24: found=4 else: t=0 if i==5: if z=='+': t=c+d elif z=='-': t=c-d elif z=='*': t=c*d if d==0: break else: if z=='/': t=c/d if y=='+': t=b+t elif y=='-': t=b-t elif y=='*': t=b*t if t==0: break else: if y=='/': t=b/t if x=='+': t=a+t elif x=='-': t=a-t elif x=='*': t=a*t if t==0: break else: if x=='/': t=a/t if t==24: found=5 else: t=0 else: break a=int(a) b=int(b) c=int(c) d=int(d) if found==1: print("(","(",a,x,b,")",y,c,")",z,d,"=","24") elif found==2: print("(",a,x,"(",b,y,c,")",")",z,d,"=","24") elif found==3: print("(",a,x,b,")",y,"(",c,z,d,")","=","24") elif found==4: print(a,x,"(","(",b,y,c,")",z,d,")","=","24") elif found==5: print(a,x,"(",b,y,"(",c,z,d,")",")","=","24") else: print('No Solutions')
# 6330405021 (20) 244 (2021-02-18 23:55) import math as m def cal(num1,op,num2): if num1 != m.e and num2 !=m.e: if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/': if num2 !=0 : r=num1/num2 else: r=m.e else: r=m.e return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(m) for m in nums.split()] check=False cases = generate_all_combinations( nums, '+-*/' ) for i in cases: if cal(cal(cal(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6])==24: check=True ans=f'( ( {i[0]} {i[1]} {i[2]} ) {i[3]} {i[4]} ) {i[5]} {i[6]} = 24' print(ans) break elif cal(cal(i[0],i[1],cal(i[2],i[3],i[4])),i[5],i[6])==24: check=True ans=f'( {i[0]} {i[1]} ( {i[2]} {i[3]} {i[4]} ) ) {i[5]} {i[6]} = 24' print(ans) break elif cal(cal(i[0],i[1],i[2]),i[3],cal(i[4],i[5],i[6]))==24: check=True ans=f'( {i[0]} {i[1]} {i[2]} ) {i[3]} ( {i[4]} {i[5]} {i[6]} ) = 24' print(ans) break elif cal(i[0],i[1],cal(cal(i[2],i[3],i[4]),i[5],i[6]))==24: check=True ans=f'{i[0]} {i[1]} ( ( {i[2]} {i[3]} {i[4]} ) {i[5]} {i[6]} ) = 24' print(ans) break elif cal(i[0],i[1],cal(i[2],i[3],cal(i[4],i[5],i[6])))==24: check=True ans=f'{i[0]} {i[1]} ( {i[2]} {i[3]} ( {i[4]} {i[5]} {i[6]} ) ) = 24' print(ans) break if not check: print("No Solutions")
# 6330406621 (20) 245 (2021-02-19 23:20) def calc(num1, operation, num2): if operation == '+': r = (num1) + (num2) elif operation == '-': r = (num1) - (num2) elif operation == '*': r = (num1)*(num2) elif operation == '/': if (num2) == 0: r = 0 else: r = (num1)/(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = nums.split() num_list = [num[0], num[1], num[2], num[3]] operators = '+-*/' c = generate_all_combinations(num_list, operators) r = int() s = 0 def calc(num1, operation, num2): if operation == '+': r = (num1) + (num2) elif operation == '-': r = (num1) - (num2) elif operation == '*': r = (num1)*(num2) elif operation == '/': if (num2) == 0: r = 0 else: r = (num1)/(num2) return r for j in c: r1 = calc(calc(calc(int(j[0]), j[1], int(j[2])), j[3], int(j[4])), j[5], int(j[6])) r2 = calc(calc(int(j[0]), j[1], calc(int(j[2]), j[3], int(j[4]))), j[5], int(j[6])) r3 = calc(calc(int(j[0]), j[1], int(j[2])), j[3], calc(int(j[4]), j[5], int(j[6]))) r4 = calc(int(j[0]), j[1], calc(calc(int(j[2]), j[3], int(j[4])), j[5], int(j[6]))) r5 = calc(int(j[0]), j[1], calc(int(j[2]), j[3], calc(int(j[4]), j[5], int(j[6])))) if r1 != 24: r2 = calc(calc(int(j[0]), j[1], calc(int(j[2]), j[3], int(j[4]))), j[5], int(j[6])) s += 1 if r2 == 24: print('('+' '+j[0]+' '+j[1]+' '+'('+' '+j[2]+' '+j[3]+' '+j[4]+' '+')'+' '+')'+' '+j[5]+' '+j[6]+' '+'='+' '+'24') break elif r2 != 24: r3 = calc(calc(int(j[0]), j[1], int(j[2])), j[3], calc(int(j[4]), j[5], int(j[6]))) s += 1 if r3 == 24: print('('+' '+j[0]+' '+j[1]+' '+j[2]+' '+')'+' '+j[3]+' '+'('+' '+j[4]+' '+j[5]+' '+j[6]+' '+')'+' '+'='+' '+'24') break elif r3 != 24: r4 = calc(int(j[0]), j[1], calc(calc(int(j[2]), j[3], int(j[4])), j[5], int(j[6]))) s += 1 if r4 == 24: print(j[0]+' '+j[1]+' '+'('+' '+'('+' '+j[2]+' '+j[3]+' '+j[4]+' '+')'+' '+j[5]+' '+j[6]+' '+')'+' '+'='+' '+'24') break elif r4 != 24: r5 = calc(int(j[0]), j[1], calc(int(j[2]), j[3], calc(int(j[4]), j[5], int(j[6])))) s += 1 if r5 == 24: print(j[0]+' '+j[1]+' '+'('+' '+j[2]+' '+j[3]+' '+'('+' '+j[4]+' '+j[5]+' '+j[6]+' '+')'+' '+')'+' '+'='+' '+'24') break if s == len(c)*4: print('No Solutions') elif r1 == 24: print('('+' '+'('+' '+j[0]+' '+j[1]+' '+j[2]+' '+')'+' '+j[3]+' '+j[4]+' '+')'+' '+j[5]+' '+j[6]+' '+'='+' '+'24') break # -------------------------------------------------- # check for the cases that equal to 24 cases = generate_all_combinations(num_list, '+-*/') s = 0 for t in cases: r1 = calc(calc(calc(int(t[0]), t[1], int(t[2])), t[3], int(t[4])), t[5], int(t[6])) r2 = calc(calc(int(t[0]), t[1], calc(int(t[2]), t[3], int(t[4]))), t[5], int(t[6])) r3 = calc(calc(int(t[0]), t[1], int(t[2])), t[3], calc(int(t[4]), t[5], int(t[6]))) r4 = calc(int(t[0]), t[1], calc(calc(int(t[2]), t[3], int(t[4])), t[5], int(t[6]))) r5 = calc(int(t[0]), t[1], calc(int(t[2]), t[3], calc(int(t[4]), t[5], int(t[6])))) if r1 == 24: #print('('+' '+'('+' '+t[0]+' '+t[1]+' '+t[2]+' '+')'+' '+t[3]+' '+t[4]+' '+')'+' '+t[5]+' '+t[6]+' '+'='+' '+'24') s += 1 if r2 == 24: #print('('+' '+t[0]+' '+t[1]+' '+'('+' '+t[2]+' '+t[3]+' '+t[4]+' '+')'+' '+')'+' '+t[5]+' '+t[6]+' '+'='+' '+'24') s += 1 if r3 == 24: #print('('+' '+t[0]+' '+t[1]+' '+t[2]+' '+')'+' '+t[3]+' '+'('+' '+t[4]+' '+t[5]+' '+t[6]+' '+')'+' '+'='+' '+'24') s += 1 if r4 == 24: #print(t[0]+' '+t[1]+' '+'('+' '+'('+' '+t[2]+' '+t[3]+' '+t[4]+' '+')'+' '+t[5]+' '+t[6]+' '+')'+' '+'='+' '+'24') s += 1 if r5 == 24: #print(t[0]+' '+t[1]+' '+'('+' '+t[2]+' '+t[3]+' '+'('+' '+t[4]+' '+t[5]+' '+t[6]+' '+')'+' '+')'+' '+'='+' '+'24') s += 1 #if s == 0: #print('No Solutions')
# 6330407221 (20) 246 (2021-02-20 19:36) def cal(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0 : r = math.e else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) check = 0 for i in cases : i[0] = int(i[0]) i[2] = int(i[2]) i[4] = int(i[4]) i[6] = int(i[6]) c1 = cal(cal((cal(i[0], i[1], i[2])),i[3],i[4]),i[5],i[6]) c2 = cal(cal(i[0],i[1],cal(i[2],i[3],i[4])),i[5],i[6]) c3 = cal(cal(i[0],i[1],i[2]),i[3],cal(i[4],i[5],i[6])) c4 = cal(i[0],i[1],(cal(cal(i[2],i[3],i[4]),i[5],i[6]))) c5 = cal(i[0],i[1],cal(i[2],i[3],cal(i[4],i[5],i[6]))) if c1 == 24: print ('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=', '24') check +=1 break elif c2 == 24: print ('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'=','24') check += 1 break elif c3 == 24: print ('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=','24') check += 1 break elif c4 == 24: print (i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','=','24') check += 1 break elif c5 == 24: print (i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','=','24') check += 1 break if check == 0 : print ('No Solutions')
# 6330408921 (20) 247 (2021-02-19 19:33) def cal(num1, op, num2): if str(op) == '+': return num1 + num2 elif str(op) == '-': return num1 - num2 elif str(op) == '*': return num1 * num2 elif str(op) == '/': if num2 == 0: return math.pi return num1 / num2 #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_list = [int(e) for e in nums.split()] cases = generate_all_combinations(nums_list, '+-*/') check = False for i in range(len(cases)): a1 = cal(cal(cal(cases[i][0], cases[i][1], cases[i][2]), cases[i][3], cases[i][4]), cases[i][5], cases[i][6]) if a1 == 24: print('( (', cases[i][0], cases[i][1], cases[i][2], ')', cases[i][3], cases[i][4], ')', cases[i][5], cases[i][6], '= 24') check = True break a2 = cal(cal(cases[i][0], cases[i][1], cal(cases[i][2], cases[i][3], cases[i][4])), cases[i][5], cases[i][6]) if a2 == 24: print('(', cases[i][0], cases[i][1], '(', cases[i][2], cases[i][3], cases[i][4], ') )', cases[i][5], cases[i][6], '= 24') check = True break a3 = cal(cal(cases[i][0], cases[i][1], cases[i][2]), cases[i][3], cal(cases[i][4], cases[i][5], cases[i][6])) if a3 == 24: print('(', cases[i][0], cases[i][1], cases[i][2], ')', cases[i][3], '(', cases[i][4], cases[i][5], cases[i][6], ')', '= 24') check = True break a4 = cal(cases[i][0], cases[i][1], cal(cal(cases[i][2], cases[i][3], cases[i][4]), cases[i][5], cases[i][6])) if a4 == 24: print(cases[i][0], cases[i][1], '( (', cases[i][2], cases[i][3], cases[i][4], ')', cases[i][5], cases[i][6], ')', '= 24') check = True break a5 = cal(cases[i][0], cases[i][1], cal(cases[i][2], cases[i][3], cal(cases[i][4], cases[i][5], cases[i][6]))) if a5 == 24: print(cases[i][0], cases[i][1], '(', cases[i][2], cases[i][3], '(', cases[i][4], cases[i][5], cases[i][6], ') )', '= 24') check = True break if not check : print('No Solutions')
# 6330409521 (14.52) 248 (2021-02-21 22:23) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0 : r = math.e else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations( num_list, '+-*/' ) k = 0 for i in cases : i[0] = int(i[0]) i[2] = int(i[2]) i[4] = int(i[4]) i[6] = int(i[6]) k +=1 ans1 = calc(calc((calc(i[0],i[1],i[2])),i[3],i[4]),i[5],i[6]) ans2 = calc(i[0],i[1],(calc(calc(i[2],i[3],i[4]),i[5],i[6]))) ans3 = calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) ans4 = calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) ans5 = calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) if k == len(cases): if ans1 == 24: sol =' ('+'( '+str(i[0])+str(i[1])+str(i[2])+' )'+str(i[3])+str(i[4])+' ) '+str(i[5])+str(i[6]) break elif ans2 == 24: sol = str(i[0])+str(i[1])+'('+'( '+str(i[2])+str(i[3])+str(i[4])+' )'+str(i[5])+str(i[6])+' )' break elif ans3 == 24: sol = str(i[0])+str(i[1])+'('+str(i[2])+str(i[3])+'( '+str(i[4])+str(i[5])+str(i[6])+' )'+')' break elif ans4 == 24: sol = '( '+str(i[0])+str(i[1])+'( '+str(i[2])+str(i[3])+str(i[4])+' )'+')'+str(i[5])+str(i[6]) break elif ans5 == 24: sol = '( '+ str(i[0])+str([i[1]])+str(i[2])+' )'+str(i[3])+'( '+str(i[4])+str(i[5])+str(i[6])+' )' break else: sol = 'No solutions' print(sol) quit() else: if ans1 == 24: sol =' ('+'( '+str(i[0])+str(i[1])+str(i[2])+' )'+str(i[3])+str(i[4])+' ) '+str(i[5])+str(i[6]) break elif ans2 == 24: sol = str(i[0])+str(i[1])+'('+'( '+str(i[2])+str(i[3])+str(i[4])+' )'+str(i[5])+str(i[6])+' )' break elif ans3 == 24: sol = str(i[0])+str(i[1])+'('+str(i[2])+str(i[3])+'( '+str(i[4])+str(i[5])+str(i[6])+' )'+')' break elif ans4 == 24: sol = '( '+str(i[0])+str(i[1])+'( '+str(i[2])+str(i[3])+str(i[4])+' )'+')'+str(i[5])+str(i[6]) break elif ans5 == 24: sol = '( '+ str(i[0])+str([i[1]])+str(i[2])+' )'+str(i[3])+'( '+str(i[4])+str(i[5])+str(i[6])+' )' break print(sol+' = 24') quit()
# 6330410021 (20) 249 (2021-02-19 23:01) def calc(num1, op, num2): if op == '+': ans = float(num1) + float(num2) elif op == '-': ans= float(num1)-float(num2) elif op == '*': ans= float(num1)*float(num2) elif op == '/': if not float(num2) == 0: ans= float(num1)/float(num2) else: ans=9999 return ans #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) for e in cases: e2= calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6]) if e2 == 24: print('(','(',e[0],e[1],e[2],')',e[3],e[4],')',e[5],e[6],'=',int(e2)) break e2=calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6])) if e2 == 24: print('(',e[0],e[1],e[2],')',e[3],'(',e[4],e[5],e[6],')','=',int(e2)) break e2=calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6]) if e2 == 24: print('(',e[0],e[1],'(',e[2],e[3],e[4],')',')',e[5],e[6],'=',int(e2)) break e2=calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6]))) if e2 == 24: print(e[0],e[1],'(',e[2],e[3],'(',e[4],e[5],e[6],')',')','=',int(e2)) break e2=calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6])) if e2 == 24: print(e[0],e[1],'(','(',e[2],e[3],e[4],')',e[5],e[6],')','=',int(e2)) break if not e2 == 24 : print('No Solutions')
# 6330411721 (20) 250 (2021-02-20 17:28) import math def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0: r = num1 / num2 else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = [int(e) for e in nums.split()] ans = "" check = False cases = generate_all_combinations( n, '+-*/' ) for i in cases: if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24: i = [str(e) for e in i] ans = "( "+"( "+i[0]+" "+i[1]+" "+i[2]+" ) "+i[3]+" "+i[4]+" ) "+i[5]+" "+i[6]+" = 24" check = True print(ans) break elif calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) == 24: i = [str(e) for e in i] ans = "( "+i[0]+" "+i[1]+" ( "+i[2]+" "+i[3]+" "+i[4]+" ) "+") "+i[5]+" "+i[6]+" = 24" check = True print(ans) break elif calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) == 24: i = [str(e) for e in i] ans = "( "+i[0]+" "+i[1]+" "+i[2]+" ) "+i[3]+" ( "+i[4]+" "+i[5]+" "+i[6]+" )"+" = 24" check = True print(ans) break elif calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) == 24: i = [str(e) for e in i] ans = i[0]+" "+i[1]+" ( "+"( "+i[2]+" "+i[3]+" "+i[4]+" ) "+i[5]+" "+i[6]+" )"+" = 24" check = True print(ans) break elif calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) == 24: i = [str(e) for e in i] ans = i[0]+" "+i[1]+" ( "+i[2]+" "+i[3]+" ( "+i[4]+" "+i[5]+" "+i[6]+" )"+" )"+" = 24" check = True print(ans) break if check == False: print("No Solutions")
# 6330412321 (20) 251 (2021-02-21 18:01) def calc(num1,op,num2): r = 0 num1 = float(num1) num2 = float(num2) if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op =='/': if num2 == 0: if num1>=0: r = math.inf elif num1<0: r = -math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)): num1 = cases[i][0] op1 = cases[i][1] num2 = cases[i][2] op2 = cases[i][3] num3 = cases[i][4] op3 = cases[i][5] num4 = cases[i][6] s1 = calc(calc(calc(num1,op1,num2),op2,num3),op3,num4) s2 = calc(calc(num1,op1,calc(num2,op2,num3)),op3,num4) s3 = calc(calc(num1,op1,num2),op2,calc(num3,op3,num4)) s4 = calc(num1,op1,calc(calc(num2,op2,num3),op3,num4)) s5 = calc(num1,op1,calc(num2,op2,calc(num3,op3,num4))) if s1 == 24: print('(','(',num1,op1,num2,')',op2,num3,')',op3,num4,'=','24') break elif s2 == 24: print('(',num1,op1,'(',num2,op2,num3,')',')',op3,num4,'=','24') break elif s3 == 24: print('(',num1,op1,num2,')',op2,'(',num3,op3,num4,')','=','24') break elif s4 == 24: print(num1,op1,'(','(',num2,op2,num3,')',op3,num4,')','=','24') break elif s5 == 24: print(num1,op1,'(',num2,op2,'(',num3,op3,num4,')',')','=','24') break if s1 != 24 and s2 != 24 and s3 != 24 and s4 != 24 and s5 != 24: print ("No Solutions") ...
# 6330413021 (20) 252 (2021-02-20 23:05) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 else : if num2 != 0: r = num1 / num2 else : r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a = list(map(int,nums.split())) cases = generate_all_combinations( a, '+-*/' ) for i in range(len(cases)): x = cases[i] a = calc(calc(calc(x[0],x[1],x[2]),x[3],x[4]),x[5],x[6]) b = calc(calc(x[0],x[1],calc(x[2],x[3],x[4])),x[5],x[6]) c = calc(calc(x[0],x[1],x[2]),x[3],calc(x[4],x[5],x[6])) d = calc(x[0],x[1],calc(calc(x[2],x[3],x[4]),x[5],x[6])) e = calc(x[0],x[1],calc(x[2],x[3],calc(x[4],x[5],x[6]))) if a == 24 : print('(','(',x[0],x[1],x[2],')',x[3],x[4],')',x[5],x[6],'=','24') break elif b == 24 : print('(',x[0],x[1],'(',x[2],x[3],x[4],')',')',x[5],x[6],'=','24') break elif c == 24 : print('(',x[0],x[1],x[2],')',x[3],'(',x[4],x[5],x[6],')','=','24') break elif d == 24 : print(x[0],x[1],'(','(',x[2],x[3],x[4],')',x[5],x[6],')','=','24') break elif e == 24 : print(x[0],x[1],'(',x[2],x[3],'(',x[4],x[5],x[6],')',')','=','24') break elif a != 24 and b != 24 and c != 24 and d != 24 and e != 24 and i == len(cases)-1: print('No Solutions')
# 6330415221 (20) 253 (2021-02-19 00:17) #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations(num_list, '+-*/' ) a1 = [] for i in cases : a1.append(('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6])) a1.append(('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6])) a1.append(('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')')) a1.append((i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')')) a1.append((i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')')) for m in a1 : n = ' '.join(m) try : q = eval(n) if q==24 : print(n,'=','24') break except ZeroDivisionError : continue if q!=24 : print('No Solutions')
# 6330416921 (20) 254 (2021-02-19 20:00) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': if num2 != 0: r = num1 / num2 else: r=123456789 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split(' ') num_list=[] for i in range (len(nums)): num_list.append(int(nums[i])) cases = generate_all_combinations( num_list , '+-*/' ) #((1+2)+3)+4 #(1+(2+3))+4 #(1+2)+(3+4) #1+((2+3)+4) #1+(2+(3+4)) for e in cases : e1=e[0] o1=e[1] e2=e[2] o2=e[3] e3=e[4] o3=e[5] e4=e[6] c=0 if calc(calc(calc(e1,o1,e2),o2,e3),o3,e4) == 24:#1 c+=1 print ('(','(',e1,o1,e2,')',o2,e3,')',o3,e4,'=',24) break elif calc(calc(e1,o1,e2),o2,calc(e3,o3,e4)) == 24: #3 c+=1 print ('(',e1,o1,e2,')',o2,'(',e3,o3,e4,')','=',24) break elif calc(calc(e1,o1,calc(e2,o2,e3)),o3,e4) == 24: #2 c+=1 print('(',e1,o1,'(',e2,o2,e3,')',')',o3,e4,'=',24) c+=1 break elif calc(e1,o1,calc(calc(e2,o2,e3),o3,e4)) == 24: c+=1 print(e1,o1,'(','(',e2,o2,e3,')',o3,e4,')','=',24) break elif calc(e1,o1,calc(e2,o2,calc(e3,o3,e4))) == 24 : c+=1 print(e1,o1,'(',e2,o2,'(',e3,o3,e4,')',')','=',24) break if c==0: print('No Solutions')
# 6330417521 (19.82) 255 (2021-02-22 12:52) def calc( n_1, op, n_2): if op == '+': return n_1 + n_2 elif op == '-': return n_1 - n_2 elif op == '*': return n_1 * n_2 elif op == '/': if n_2 == 0: return 100000000 else: return n_1 / n_2 def cas_1(n_list): n_1, op_1, n_2, op_2, n_3, op_3, n_4 = n_list s_1 = calc(n_1, op_1, n_2) s_2 = calc(s_1, op_2, n_3) return calc(s_2, op_3, n_4) def cas_2(n_list): n_1, op_1, n_2, op_2, n_3, op_3, n_4 = n_list s_1 = calc(n_2, op_2, n_3) s_2 = calc(n_1, op_1, s_1) return calc(s_2, op_3, n_4) def cas_3(n_list): n_1, op_1, n_2, op_2, n_3, op_3, n_4 = n_list s_1 = calc(n_1, op_1, n_2) s_2 = calc(n_3, op_3, n_4) return calc(s_1, op_2, s_2) def cas_4(n_list): n_1, op_1, n_2, op_2, n_3, op_3, n_4 = n_list s_1 = calc(n_2, op_2, n_3) s_2 = calc(s_1, op_3, n_4) return calc(n_1, op_1, s_2) def cas_5(n_list): n_1, op_1, n_2, op_2, n_3, op_3, n_4 = n_list s_1 = calc(n_3, op_3, n_4) s_2 = calc(n_2, op_2, s_1) return calc(n_1, op_1, s_2) #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... ... a = nums.split() num = [int(e) for e in a] cases = generate_all_combinations( sorted(num), '+-*/' ) ... check = False for n_list in cases: if cas_1(n_list) == 24: n_1, op_1, n_2, op_2, n_3, op_3, n_4 = n_list print('( (',n_1,op_1,n_2,')',op_2,n_3,')',op_3,n_4,'= 24') check = True break elif cas_2(n_list) == 24: n_1, op_1, n_2, op_2, n_3, op_3, n_4 = n_list print('(',n_1,op_1,'(',n_2,op_2,n_3,') )',op_3,n_4,'= 24') check = True break elif cas_3(n_list) == 24: n_1, op_1, n_2, op_2, n_3, op_3, n_4 = n_list print('(',n_1,op_1,n_2,')',op_2,'(',n_3,op_3,n_4,')','= 24') check = True break elif cas_4(n_list) == 24: n_1, op_1, n_2, op_2, n_3, op_3, n_4 = n_list print(n_1,op_1,'( (',n_2,op_2,n_3,')',op_3,n_4,')','= 24') check = True break elif cas_5(n_list) == 24: n_1, op_1, n_2, op_2, n_3, op_3, n_4 = n_list print(n_1,op_1,'(',n_2,op_2,'(',n_3,op_3,n_4,') )','= 24') check = True break if check == False: print('No Solution')
# 6330418121 (20) 256 (2021-02-20 23:32) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': if num2 != 0: r = num1 / num2 else: r = 100000000 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = nums.split() num_list = [int(n[0]),int(n[1]),int(n[2]),int(n[3])] cases = generate_all_combinations(num_list, '+-*/' ) i = 0 while i in range(len(cases)): n1 = cases[i][0] n2 = cases[i][2] n3 = cases[i][4] n4 = cases[i][6] operation1 = cases[i][1] operation2 = cases[i][3] operation3 = cases[i][5] out1 = calc((calc((calc(n1,operation1,n2)),operation2,n3)),operation3,n4) out2 = calc((calc(n1,operation1,(calc(n2,operation2,n3)))),operation3,n4) out3 = calc((calc(n1,operation1,n2)),operation2,(calc(n3,operation3,n4))) out4 = calc(n1,operation1,(calc((calc(n2,operation2,n3)),operation3,n4))) out5 = calc(n1,operation1,(calc(n2,operation2,(calc(n3,operation3,n4))))) if out1 == 24 : print("(","(",n1,operation1,n2,")",operation2,n3,")",operation3,n4,"=","24") break if out2 == 24 : print("(",n1,operation1,"(",n2,operation2,n3,")",")",operation3,n4,"=","24") break if out3 == 24 : print("(",n1,operation1,n2,")",operation2,"(",n3,operation3,n4,")","=","24") break if out4 == 24 : print(n1,operation1,"(","(",n2,operation2,n3,")",operation3,n4,")","=","24") break if out5 == 24 : print(n1,operation1,"(",n2,operation2,"(",n3,operation3,n4,")",")","=","24") break i += 1 if i == len(cases)-1: n1 = cases[i][0] n2 = cases[i][2] n3 = cases[i][4] n4 = cases[i][6] operation1 = cases[i][1] operation1 = cases[i][3] operation1 = cases[i][5] out1 = calc((calc((calc(n1,operation1,n2)),operation2,n3)),operation3,n4) out2 = calc((calc(n1,operation1,(calc(n2,operation2,n3)))),operation3,n4) out3 = calc((calc(n1,operation1,n2)),operation2,(calc(n3,operation3,n4))) out4 = calc(n1,operation1,(calc((calc(n2,operation2,n3)),operation3,n4))) out5 = calc(n1,operation1,(calc(n2,operation2,(calc(n3,operation3,n4))))) if out1 == 24 : print("(","(",n1,operation1,n2,")",operation2,n3,")",operation3,n4,"=","24") break if out2 == 24 : print("(",n1,operation1,"(",n2,operation2,n3,")",")",operation3,n4,"=","24") break if out3 == 24 : print("(",n1,operaiton1,n2,")",operaiton2,"(",n3,operaiton3,n4,")","=","24") break if out4 == 24 : print(n1,operaiton1,"(","(",n2,operaiton2,n3,")",operaiton3,n4,")","=","24") break if out5 == 24 : print(n1,operaiton1,"(",n2,operaiton2,"(",n3,operaiton3,n4,")",")","=","24") break else: print("No Solutions") break 87
# 6330420321 (20) 257 (2021-02-19 00:18) def parac1(eachl1): eachl = [None]*11 eachl[0] = '(' eachl[1] = '(' eachl[5] = ')' eachl[8] = ')' eachl[2] = eachl1[0] eachl[3] = eachl1[1] eachl[4] = eachl1[2] eachl[6] = eachl1[3] eachl[7] = eachl1[4] eachl[9] = eachl1[5] eachl[10] = eachl1[6] return eachl def parac2(eachl2): eachl = [None]*11 eachl[0] = '(' eachl[3] = '(' eachl[7] = ')' eachl[8] = ')' eachl[1] = eachl2[0] eachl[2] = eachl2[1] eachl[4] = eachl2[2] eachl[5] = eachl2[3] eachl[6] = eachl2[4] eachl[9] = eachl2[5] eachl[10] = eachl2[6] return eachl def parac3(eachl3): eachl = [None]*11 eachl[0] = '(' eachl[4] = ')' eachl[6] = '(' eachl[10] = ')' eachl[1] = eachl3[0] eachl[2] = eachl3[1] eachl[3] = eachl3[2] eachl[5] = eachl3[3] eachl[7] = eachl3[4] eachl[8] = eachl3[5] eachl[9] = eachl3[6] return eachl def parac4(eachl4): eachl = [None]*11 eachl[2] = '(' eachl[3] = '(' eachl[7] = ')' eachl[10] = ')' eachl[0] = eachl4[0] eachl[1] = eachl4[1] eachl[4] = eachl4[2] eachl[5] = eachl4[3] eachl[6] = eachl4[4] eachl[8] = eachl4[5] eachl[9] = eachl4[6] return eachl def parac5(eachl5): eachl = [None]*11 eachl[2] = '(' eachl[5] = '(' eachl[9] = ')' eachl[10] = ')' eachl[0] = eachl5[0] eachl[1] = eachl5[1] eachl[3] = eachl5[2] eachl[4] = eachl5[3] eachl[6] = eachl5[4] eachl[7] = eachl5[5] eachl[8] = eachl5[6] return eachl def addpara(eachlist): case_w_paren = [] for equac in eachlist: a = parac1(equac) b = parac2(equac) c = parac3(equac) d = parac4(equac) e = parac5(equac) case_w_paren.append(a) case_w_paren.append(b) case_w_paren.append(c) case_w_paren.append(d) case_w_paren.append(e) return case_w_paren #--------------------------------------------------------- nums = input('Enter 4 integers: ') aa = [] num_l = nums.split(' ') cases = generate_all_combinations( num_l, '+-*/' ) case_paren = addpara(cases) for sad in case_paren : sadss = ' '.join(sad) Found = False try : point = eval(sadss) if point == 24 : print(sadss,'=','24') Found = True break except ZeroDivisionError: continue if Found == False : print('No Solutions')
# 6330422621 (16.08) 258 (2021-02-18 22:44) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0: r = num1 / num2 else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') newton = nums.split() einstein = [] for i in range(len(newton)): einstein.append(int(newton[i])) cases = generate_all_combinations( einstein , '+-*/' ) test = 0 for i in range(len(cases)): if calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6])== 24: A = i test = 1 break if calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6])== 24: A = i test = 2 break if calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))== 24: A = i test = 3 break if calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6]))== 24: A = i test = 4 break if calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])))== 24: A = i test = 5 break if test == 1: print('(', '(',cases[A][0],cases[A][1],cases[A][2] ,')', cases[A][3], cases[A][4] ,')', cases[A][5], cases[A][6],''+'=','24') elif test == 2: print('(', cases[A][0], cases[A][1] ,'(', cases[A][2], cases[A][3], cases[A][4] ,')',')', cases[A][5], cases[A][6],''+'=','24') elif test == 3: print('(',cases[A][0],cases[A][1],cases[A][2],')',cases[A][3],'(',cases[A][4],cases[A][5],cases[A][6],')',''+'=','24') elif test == 4: print(cases[A][0], cases[A][1] ,'(', '(', cases[A][2], cases[A][3], cases[A][4] ,')', cases[A][5], cases[A][6],')',''+'=','24') elif test == 5: print(cases[A][0], cases[A][1], '(', cases[A][2], cases[A][3], '(', cases[A][4], cases[A][5], cases[A][6] ,')',''+'=','24') else: print("No Solutions")
# 6330423221 (0) 259 (2021-02-22 14:06) def calc(num1, operators, num2): if operators == '+': r = num1+num2 elif operators == '-': r = num1-num2 elif operators == '*': r = num1*num2 elif operators == '/': if num2 ==0: pass else : r = num1/num2 return r #--------------------------------------------------------- nums = input().split() C = generate_all_combinations(nums,'+-*/' ) for e in C: num1=int(e[0]) num2=int(e[2]) num3=int(e[4]) num4=int(e[6]) operators2=(e[3]) operators3=(e[5]) operators1=(e[1]) v12=calc(num1, operators1, num2) v34=calc(num3, operators3, num4) m1=calc(v12, operators2, v34) v123=calc(v12, operators2, num3) m2=calc(v123, operators3, num4) v234=calc(num2, operators2, v34) m3=calc(num1, operators1, v234) v23=calc(num2, operators2, num3) v1237=calc(num1,operators1, v23) m4=calc(v1237,operators3, num4) v2347=calc(v23,operators3, num4) m5=calc(num1,operators1, v2347) if m1==24: print ("("+str(num1)+operators1+str(num2)+")"+operators2+"("+str(num3)+operators3+str(num4)+")"+"= 24 ") if m2==24: print ("(("+str(num1)+operators1+str(num2)+")"+operators2+str(num3)+")"+operators3+str(num4)+"= 24 ") if m3==24: print (str(num1)+operators1+"("+str(num2)+operators2+"("+str(num3)+operators3+str(num4)+"))"+"= 24 ") if m4==24: print ("("+str(num1)+operators1+"("+str(num2)+operators2+str(num3)+"))"+operators3+str(num4)+"= 24 ") if m5==24: print (str(num1)+operators1+"(("+str(num2)+operators2+str(num3)+")"+operators3+str(num4)+")"+"= 24 ") if m1!=24 and m2!=24 and m3!=24 and m4!=24 and m5!=24: print ("No Solutions") ...
# 6330424921 (18) 260 (2021-02-19 20:02) #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations(nums.split(), '+-*/' ) for a in cases : try: eval('( ('+a[0]+a[1]+a[2]+')'+a[3]+a[4]+')'+a[5]+a[6]) if eval('( ('+a[0]+a[1]+a[2]+')'+a[3]+a[4]+')'+a[5]+a[6]) == 24 : print('( (' ,a[0],a[1],a[2], ')' ,a[3],a[4], ')',a[5],a[6], '= 24') break except: pass try: eval('('+a[0]+a[1]+'('+a[2]+a[3]+a[4]+'))'+a[5]+a[6]) if eval('('+a[0]+a[1]+'('+a[2]+a[3]+a[4]+'))'+a[5]+a[6]) == 24 : print('(',a[0],a[1],'(',a[2],a[3],a[4],') )',a[5],a[6], '= 24') break except: pass try: eval('('+a[0]+a[1]+a[2]+')'+a[3]+'('+a[4]+a[5]+a[6]+')') if eval('('+a[0]+a[1]+a[2]+')'+a[3]+'('+a[4]+a[5]+a[6]+')') == 24 : print('(',a[0],a[1],a[2],')',a[3],'(',a[4],a[5],a[6],')', '= 24') break except: pass try: eval(a[0]+a[1]+'(('+a[2]+a[3]+a[4]+')'+a[5]+a[6]+')') if eval(a[0]+a[1]+'(('+a[2]+a[3]+a[4]+')'+a[5]+a[6]+')') == 24 : print(a[0],a[1],'( (',a[2],a[3],a[4],')',a[5],a[6],')', '= 24') break except: pass try: eval(a[0]+a[1]+'('+a[2]+a[3]+'('+a[4]+a[5]+a[6]+'))') if eval(a[0]+a[1]+'('+a[2]+a[3]+'('+a[4]+a[5]+a[6]+'))') == 24 : print(a[0],a[1],'(',a[2],a[3],'(',a[4],a[5],a[6],')', '= 24') break except: pass if a == cases[-1]: print('No Solutions') break
# 6330425521 (18) 261 (2021-02-22 16:26) #Calc-operation def calc(num1, op, num2) : if op == "+" : sol = num1 + num2 return sol elif op == "-" : sol = num1 - num2 return sol elif op == "*" : sol = num1 * num2 return sol elif op == "/" : if int(num2) != 0 : sol = num1 / num2 return sol else : return 0 #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() nums = [int(e) for e in nums] cases = generate_all_combinations( nums, '+-*/' ) #cases[0] = [1,'+',2,'+',3,'+',4] ans = 1 for p in range(len(cases)): n1 = cases[p][0] n2 = cases[p][2] n3 = cases[p][4] n4 = cases[p][6] f1 = cases[p][1] f2 = cases[p][3] f3 = cases[p][5] if calc(calc(calc(n1,f1,n2),f2,n3),f3,n4) == 24: print("(","(",n1,f1,n2,")",f2,n3,")",f3,n4,"= 24") ans -= 1 if ans == 0: break elif calc(calc(n1,f1,calc(n2,f2,n3)),f3,n4) == 24: print("(",n1,f1,"(",n2,f2,n3,")",")",f3,n4,"= 24") ans -= 1 if ans == 0: break elif calc(calc(n1,f1,n2),f2,calc(n3,f3,n4)) == 24: print("(",n1,f1,n2,")",f2,"(",n3,f3,n4,")","= 24") ans -= 1 if ans == 0: break elif calc(n1,f1,calc(calc(n2,f2,n3),f3,n4)) == 24: print(n1,f1,"(","(",n2,f2,n3,")",f3,n4,")","= 24") ans -= 1 if ans == 0: break elif calc(n1,f1,calc(n2,f2,calc(n3,f3,n4))) == 24: print(n1,f1,"(",n2,f2,"(",n3,f3,n4,")",")","= 24") ans -= 1 if ans == 0: break if ans != 0: print("No Solutions")
# 6330426121 (20) 262 (2021-02-22 19:04) def cal(x1,op,x2): if op == '+': return x1+x2 elif op == '-': return x1-x2 elif op == '*': return x1*x2 elif op == '/': if x2 != 0: return x1/x2 else:return 0 def method1(e): return cal(cal(cal(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6]) def method2(e): return cal(cal(e[0],e[1],cal(e[2],e[3],e[4])),e[5],e[6]) def method3(e): return cal(cal(e[0],e[1],e[2]),e[3],cal(e[4],e[5],e[6])) def method4(e): return cal(e[0],e[1],cal(cal(e[2],e[3],e[4]),e[5],e[6])) def method5(e): return cal(e[0],e[1],cal(e[2],e[3],cal(e[4],e[5],e[6]))) #--------------------------------------------------------- nums = input('Enter 4 integers: ') nl = nums.split() inl = [] for i in nl: inl.append(int(i)) cases = generate_all_combinations( inl, '+-*/' ) ans = '' for e in cases: if method1(e) == 24: ans = '( ( {:d} {:s} {:d} ) {:s} {:d} ) {:s} {:d} = 24'.format(e[0],e[1],e[2],e[3],e[4],e[5],e[6]) break elif method2(e) == 24: ans = '( {:d} {:s} ( {:d} {:s} {:d} ) ) {:s} {:d} = 24'.format(e[0],e[1],e[2],e[3],e[4],e[5],e[6]) break elif method3(e) == 24: ans = '( {:d} {:s} {:d} ) {:s} ( {:d} {:s} {:d} ) = 24'.format(e[0],e[1],e[2],e[3],e[4],e[5],e[6]) break elif method4(e) == 24: ans = '{:d} {:s} ( ( {:d} {:s} {:d} ) {:s} {:d} ) = 24'.format(e[0],e[1],e[2],e[3],e[4],e[5],e[6]) break elif method5(e) == 24: ans = '{:d} {:s} ( {:d} {:s} ( {:d} {:s} {:d} ) ) = 24'.format(e[0],e[1],e[2],e[3],e[4],e[5],e[6]) break else:pass if ans == '': print('No Solutions') else:print(ans)
# 6330427821 (20) 263 (2021-02-21 15:16) def cal(i): case1 = ['(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6]] case2 = ['(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6]] case3 = ['(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')'] case4 = [i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')'] case5 = [i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')'] case_check = [case1, case2, case3, case4, case5] for j in case_check: try: eval("".join(j)) except ZeroDivisionError: #except divided by zero case continue if eval("".join(j)) == 24: return " ".join(j) + " = 24" else: continue #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_split = nums.split( ) cases = generate_all_combinations( num_split, '+-*/' ) check_result = 0 for i in cases: result = cal(i) if result == None: continue else: print(result) check_result += 1 break if check_result == 0: print("No Solutions")
# 6330428421 (16.08) 264 (2021-02-22 00:50) def op(n1,o,n2): if o =='+': r=float(n1)+float(n2) elif o =='-': r=float(n1)-float(n2) elif o =='*': r=float(n1)*float(n2) elif o =='/' and float(n2) !=0: r=float(n1)/float(n2) elif o =='/' and float(n2) ==0: r= 9999999999999999999999999 return r def solve(combination): n1,n2,n3,n4=combination[::2] o1,o2,o3=combination[1::2] y="valid" if op(op(op(n1,o1,n2),o2,n3),o3,n4)==24: print('(','(',n1,o1,n2,')',o2,n3,')',o3,n4,'=',24) elif op(op(n1,o1,op(n2,o2,n3)),o3,n4)==24: print('(',n1,o1,'(',n2,o2,n3,')',o3,n4,'=',24) elif op(op(n1,o1,n2),o2,op(n3,o3,n4))==24: print('(',n1,o1,n2,')',o2,'(',n3,o3,n4,')','=',24) elif op(n1,o1,op(op(n2,o2,n3),o3,n4))==24: print(n1,o1,'(','(',n2,o2,n3,')',o3,n4,')','=',24) elif op(n1,o1,op(n2,o2,op(n3,o3,n4)))==24: print(n1,o1,'(',n2,o2,'(',n3,o3,n4,')',')','=',24) else: #print('No Solutions') y="invalid" return y #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list=nums.split() #print(num_list) cases = generate_all_combinations(num_list, '+-*/' ) for i in range(len(cases)): case=cases[i] y=solve(case) if y=="valid": break if y=='invalid': print('No Solutions')
# 6330429021 (18) 265 (2021-02-20 13:23) def calc(n1,op,n2): if str(op) == "+": return n1+n2 elif str(op) == "-": return n1-n2 elif str(op) == "*": return n1*n2 elif str(op) == "/": if n2 == 0: return math.e return n1/n2 #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() q = True for j in range(len(nums)): nums[j] = int(nums[j]) cases = generate_all_combinations(nums, '+-*/') for i in range(len(cases)): if calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6])==24: print("(","(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],"= 24") q = False break elif calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6])==24: print("(",cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],cases[i][4],")",")",cases[i][5],cases[i][6],"= 24") q = False break elif calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))==24: print("(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")","= 24") q = False break elif calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6]))==24: print(cases[i][0],cases[i][1],"(","(",cases[i][2],cases[i][0],cases[i][0],")",cases[i][6],cases[i][6],")","= 24") q= False break elif calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])))==24: print(cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")",")","= 24") q = False break else: pass if q == True: print("No Solutions")
# 6330430621 (13.2) 266 (2021-02-21 17:20) def calc(num1, e, num2): r = 0 if e == '+': r = num1 + num2 elif e == '-': r = num1 - num2 elif e == '*': r = num1 * num2 elif e == '/' and num2 != 0: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... ... w = nums.split() a0 = int(w[0]) a1 = int(w[1]) a2 = int(w[2]) a3 = int(w[3]) cases = generate_all_combinations( [a0,a1,a2,a3], '+-*/' ) ... z = 0 for e in cases: u = calc(e[0],e[1],e[2]) v = calc(e[4],e[5],e[6]) m = calc(u,e[3],e[4]) n = calc(m,e[5],e[6]) r = calc(e[2],e[3],e[4]) r1 = calc(e[0],e[1],r) r_1 = calc(r1,e[5],e[6]) r2 = calc(r,e[5],e[6]) r_2 = calc(e[0],e[1],r2) if calc(u,e[3],v) == 24: z += 1 print('(',e[0],e[1],e[2],')',e[3],'(',e[4],e[5],e[6],')') break if n == 24: z += 1 print('(','(',e[0],e[1],e[2],')',e[3],e[4],')',e[5],e[6]) break if r_1 == 24: z += 1 print('(',e[0],e[1],'(',e[2],e[3],e[4],')',')',e[5],e[6]) break if r_2 == 24: z += 1 print(e[0],e[1],'(','(',e[2],e[3],e[4],')',e[5],e[6],')') break if calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6])))==24: a=24 print(e[0],e[1],'(',e[2],e[3],'(',e[4],e[5],e[6],')',')') break if z != 1: print('No Solutions')
# 6330431221 (20) 267 (2021-02-21 11:01) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0: r = num1 / num2 else: return 0 return r def comp1(prog): R1 = calc(prog[0],prog[1],prog[2]) R2 = calc(R1,prog[3],prog[4]) answer1 = calc(R2,prog[5],prog[6]) return answer1 def comp2(prog): R1 = calc(prog[2],prog[3],prog[4]) R2 = calc(prog[0],prog[1],R1) answer2 = calc(R2,prog[5],prog[6]) return answer2 def comp3(prog): R1 = calc(prog[0],prog[1],prog[2]) R2 = calc(prog[4],prog[5],prog[6]) answer3 = calc(R1,prog[3],R2) return answer3 def comp4(prog): R1 = calc(prog[2],prog[3],prog[4]) R2 = calc(R1,prog[5],prog[6]) answer4 = calc(prog[0],prog[1],R2) return answer4 def comp5(prog): R1 = calc(prog[4],prog[5],prog[6]) R2 = calc(prog[2],prog[3],R1) answer5 = calc(prog[0],prog[1],R2) return answer5 #--------------------------------------------------------- nums = input('Enter 4 integers: ') list_nums = [ int(i) for i in nums.split() ] cases = generate_all_combinations( list_nums, '+-*/' ) temp = 0 for j in range(len(cases)) : if comp1(cases[j]) == 24 : ans = cases[j] temp = 1 break if comp2(cases[j]) == 24 : ans = cases[j] temp = 2 break if comp3(cases[j]) == 24 : ans = cases[j] temp = 3 break if comp4(cases[j]) == 24 : ans = cases[j] temp = 4 break if comp5(cases[j]) == 24 : ans = cases[j] temp = 5 break if temp > 0 : if temp == 1 : print("(","(",ans[0],ans[1],ans[2],")",ans[3],ans[4],")",ans[5],ans[6],"=",24) if temp == 2 : print("(",ans[0],ans[1],"(",ans[2],ans[3],ans[4],")",")",ans[5],ans[6],"=",24) if temp == 3 : print("(",ans[0],ans[1],ans[2],")",ans[3],"(",ans[4],ans[5],ans[6],")","=",24) if temp == 4 : print(ans[0],ans[1],"(","(",ans[2],ans[3],ans[4],")",ans[5],ans[6],")","=",24) if temp == 5 : print(ans[0],ans[1],"(",ans[2],ans[3],"(",ans[4],ans[5],ans[6],")",")","=",24) else : print("No Solutions")
# 6330432921 (18) 268 (2021-02-21 17:49) def calc(num1,op,num2): if op == "+": r = num1 + num2 if op == "-": r = num1 - num2 if op == "*": r = num1 * num2 if op == "/" and num2 != 0: r = num1 / num2 if op == "/" and num2 == 0: r = 1000000 return r def A1(Data): num1 = Data[0] op1 = Data[1] num2 = Data[2] op2 = Data[3] num3 = Data[4] op3 = Data[5] num4 = Data[6] N = calc(calc(int(num1),op1,int(num2)),op2,calc(int(num3),op3,int(num4))) return N def A2(Data): num1 = Data[0] op1 = Data[1] num2 = Data[2] op2 = Data[3] num3 = Data[4] op3 = Data[5] num4 = Data[6] N = calc(calc(calc(int(num1),op1,int(num2)),op2,int(num3)),op3,int(num4)) return N def A3(Data): num1 = Data[0] op1 = Data[1] num2 = Data[2] op2 = Data[3] num3 = Data[4] op3 = Data[5] num4 = Data[6] N = calc(calc(int(num1),op1,calc(int(num2),op3,int(num3))),op3,int(num4)) return N def A4(Data): num1 = Data[0] op1 = Data[1] num2 = Data[2] op2 = Data[3] num3 = Data[4] op3 = Data[5] num4 = Data[6] N = calc(int(num1),op1,calc(calc(int(num2),op2,int(num3)),op3,int(num4))) return N def A5(Data): num1 = Data[0] op1 = Data[1] num2 = Data[2] op2 = Data[3] num3 = Data[4] op3 = Data[5] num4 = Data[6] N = calc(int(num1),op1,calc(int(num2),op2,calc(int(num3),op3,int(num4)))) return N #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() operators = "+-*/" case = generate_all_combinations(num_list,operators) for i in case: if A1(i) == 24: print("(",i[0],i[1],i[2],")",i[3],"(",i[4],i[5],i[6],")","=","24") break if A2(i) == 24: print("(","(",i[0],i[1],i[2],")",i[3],i[4],")",i[5],i[6],"=","24") break if A3(i) == 24: print("(",i[0],i[1],"(",i[2],i[3],i[4],")",")",i[5],i[6],"=","24") break if A4(i) == 24: print(i[0],i[1],"(","(",i[2],i[3],i[4],")",i[5],i[6],")","=","24") break if A5(i) == 24: print(i[0],i[1],"(",i[2],i[3],"(",i[4],i[5],i[6],")",")","=","24") break if i == case[-1]: print("No Solutions") break
# 6330433521 (17.6) 269 (2021-02-20 03:18) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation =='-': r = num1 - num2 elif operation =='*': r = num1 * num2 elif operation =='/' and num2 ==0: r = 99999999 else: r = num1 / num2 return r #--------------------------------------------------------- num = input('Enter 4 integers: ').split() num[0] = int(num[0]) num[1] = int(num[1]) num[2] = int(num[2]) num[3] = int(num[3]) cases = generate_all_combinations( num, '+-*/' ) for i in cases: n = calc(i[0],i[1],i[2]) n = calc(n,i[3],i[4]) n = calc(n,i[5],i[6]) if n == 24: print("( (", i[0], i[1], i[2], ")", i[3], i[4], ")", i[5], i[6], "= 24") break n = calc(i[2],i[3],i[4]) n = calc(i[0],i[1],n) n = calc(n,i[5],i[6]) if n == 24: print('( ',i[0],i[1],'( ',i[2],i[3],i[4],' ) )',i[5],i[6]) break n = calc(i[0],i[1],i[2]) m = calc(i[4],i[5],i[6]) n = calc(n,i[3],m) if n == 24: print('( ',i[0],i[1],i[2],' )',i[3],'( ',i[4],i[5],i[6],' )') break n = calc(i[2],i[3],i[4]) n = calc(n,i[5],i[6]) n = calc(i[0],i[1],n) if n == 24: print(i[0],i[1],'( ( ',i[2],i[3],i[4],' )',i[5],i[6],' )') break n = calc(i[4],i[5],i[6]) n = calc(i[2],i[3],n) n = calc(i[0],i[1],n) if n == 24: print(i[0],i[1],'( ',i[2],i[3],'( ',i[4],i[5],i[6],' ) )') break else: print('No Solutions')
# 6330434121 (14) 270 (2021-02-20 14:07) def calc(num1, op, num2): import math if op == '+': r = int(num1) + int(num2) elif op == '-': r = int(num1) - int(num2) elif op == '*': r = int(num1) * int(num2) elif op == '/': if int(num2)==0: num2 = math.e r = int(num1) / int(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations(nums, '+-*/') for k in range(len(cases)): for i in range(5): if i == 0: answer = 0 answer = calc(cases[k][0], cases[k][1], cases[k][2]) answer = calc(answer, cases[k][3], cases[k][4]) answer = calc(answer, cases[k][5], cases[k][6]) elif i == 1: answer = 0 answer = calc(cases[k][2], cases[k][3], cases[k][4]) answer = calc(cases[k][0], cases[k][1], answer) answer = calc(answer, cases[k][5], cases[k][6]) elif i == 2: answer = 0 answer1 = 0 answer2 = 0 answer1 = calc(cases[k][0], cases[k][1], cases[k][2]) answer2 = calc(cases[k][4], cases[k][5], cases[k][6]) answer = calc(answer1, cases[k][3], answer2) elif i == 3: answer = 0 answer1 = 0 answer2 = 0 answer1 = calc(cases[k][2], cases[k][3], cases[k][4]) answer2 = calc(answer1, cases[k][5], cases[k][6]) answer = calc(cases[k][0], cases[k][1], answer2) elif i == 4: answer = 0 answer1 = 0 answer2 = 0 answer1 = calc(cases[k][4], cases[k][5], cases[k][6]) answer2 = calc(cases[k][2], cases[k][3], answer1) answer = calc(cases[k][0], cases[k][1], answer2) if answer == 24: break if answer == 24: break if answer == 24: if i ==0: print("( (",cases[k][0],cases[k][1],cases[k][2],")",cases[k][3],cases[k][4],")",cases[k][5],cases[k][6],"= 24") if i ==1: print("(",cases[k][0],cases[k][1],"(",cases[k][2],cases[k][3],cases[k][4],") )",cases[k][5],cases[k][6],"= 24") if i ==2: print("(",cases[k][0],cases[k][1],cases[k][2],")",cases[k][3],"(",cases[k][4],cases[k][5],cases[k][6],")","= 24") if i ==3: print(cases[k][0],cases[k][1],"( (",cases[k][2],cases[k][3],cases[k][4],")",cases[k][5],cases[k][6],")","= 24") if i ==4: print(cases[k][0],cases[k][1],"(",cases[k][2],cases[k][3],"(",cases[k][4],cases[k][5],cases[k][6],") )","= 24") else: print("No Solutions")
# 6330435821 (16.2) 271 (2021-02-19 16:00) def calc(num1,op,num2): if op=="+" and num1!='Error' and num2!='Error': r=num1+num2 elif op=="-" and num1!='Error' and num2!='Error': r=num1-num2 elif op=="*" and num1!='Error' and num2!='Error': r=num1*num2 elif op=='/' and num2!=0 and num1!='Error' and num2!='Error': r=num1/num2 else: r='Error' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() ... ... cases = generate_all_combinations(nums ,'+-*/') ... found=False for each_case in cases: NUMBER1=int(each_case[0]) OPERATOR1=each_case[1] NUMBER2=int(each_case[2]) OPERATOR2=each_case[3] NUMBER3=int(each_case[4]) OPERATOR3=each_case[5] NUMBER4=int(each_case[6]) TYPE1 = calc((calc((calc(NUMBER1, OPERATOR1, NUMBER2)), OPERATOR2, NUMBER3)), OPERATOR3, NUMBER4) TYPE2 = calc((calc(NUMBER1, OPERATOR1, (calc(NUMBER2, OPERATOR2, NUMBER3)))), OPERATOR3, NUMBER4) TYPE3 = calc((calc(NUMBER1, OPERATOR1, NUMBER2)), OPERATOR2, (calc(NUMBER3, OPERATOR3, NUMBER4))) TYPE4 = calc(NUMBER1, OPERATOR1, (calc((calc(NUMBER2, OPERATOR2, NUMBER3)), OPERATOR3, NUMBER4))) TYPE5 = calc(NUMBER1, OPERATOR1, (calc(NUMBER2, OPERATOR2, (calc(NUMBER3, OPERATOR3, NUMBER4))))) if TYPE1==24: print('(','(',NUMBER1,OPERATOR1,NUMBER2,')',OPERATOR2,NUMBER3,')',OPERATOR3,NUMBER4) found = True break if TYPE2==24: print('(',NUMBER1,OPERATOR1,'(',NUMBER2,OPERATOR2,NUMBER3,')',')',OPERATOR3,NUMBER4) found = True break if TYPE3==24: print('(',NUMBER1,OPERATOR1,NUMBER2,')',OPERATOR2,'(',NUMBER3,OPERATOR3,NUMBER4,')') found = True break if TYPE4==24: print(NUMBER1, OPERATOR1, '(', '(', NUMBER2, OPERATOR2, NUMBER3, ')', OPERATOR3, NUMBER4, ')') found = True break if TYPE5==24: print(NUMBER1, OPERATOR1, '(', NUMBER2, OPERATOR2, '(',NUMBER3, OPERATOR3, NUMBER4, ')' ')') found = True break #print(TYPE1,TYPE2,TYPE3,TYPE4,TYPE5) if not found: print('No Solutions')
# 6330436421 (19.8) 272 (2021-02-22 17:02) # Possible parentheses form # ( ( 1 + 2 ) + 3 ) + 4 # ( 1 + ( 2 + 3 ) ) + 4 # ( 1 + 2 ) + ( 3 + 4 ) # 1 + ( ( 2 + 3 ) + 4 ) # 1 + ( 2 + ( 3 + 4 ) ) def calculate_parentheses(cases): """Calculate all cases in parameter 'cases' return : case that calculate and it's 24 else return 'No Solutions' Example and Doctest : >>> nums = [5, 5, 9, 5] >>> cases = generate_all_combinations(nums, '+-*/') >>> calculate_parentheses(cases) '( ( 5 + 5 ) + 5 ) + 9 = 24' >>> nums = [13, 2, 13, 13] >>> cases = generate_all_combinations(nums, '+-*/') >>> calculate_parentheses(cases) '2 * ( 13 - ( 13 / 13 ) ) = 24' >>> nums = [1, 1, 2, 7] >>> cases = generate_all_combinations(nums, '+-*/') >>> calculate_parentheses(cases) '( 1 + 2 ) * ( 1 + 7 ) = 24' >>> nums = [200, -120, 10, 3] >>> cases = generate_all_combinations(nums, '+-*/') >>> calculate_parentheses(cases) '( ( -120 + 200 ) * 3 ) / 10 = 24' >>> nums = [1, 1, 1, 9] >>> cases = generate_all_combinations(nums, '+-*/') >>> calculate_parentheses(cases) 'No Solutions' >>> # Check case that can occured 'divided by zero' problem >>> nums = [13, 13, 13, 13] >>> cases = generate_all_combinations(nums, '+-*/') >>> calculate_parentheses(cases) 'No Solutions' """ # Use try except because some combination are error because 'divided by zero' for i in cases: case_to_calculate = i num1 = case_to_calculate[0] operation1 = case_to_calculate[1] num2 = case_to_calculate[2] operation2 = case_to_calculate[3] num3 = case_to_calculate[4] operation3 = case_to_calculate[5] num4 = case_to_calculate[6] # Case 1 : ( ( num1 'operation1' num2 ) 'operation2' num3 ) 'operation3' num4 case1 = f"( ( {num1} {operation1} {num2} ) {operation2} {num3} ) {operation3} {num4} = 24" try : calc1 = calc(num1, operation1, num2) calc1 = calc(calc1, operation2, num3) calc1 = calc(calc1, operation3, num4) except ZeroDivisionError: calc1 = 0 if calc1 == 24: return case1 # Case 2 : ( num1 'operation1' ( num2 'operation2' num3 ) ) 'operation3' num4 case2 = f"( {num1} {operation1} ( {num2} {operation2} {num3} ) ){operation3} {num4} = 24" try : calc2 = calc(num2, operation2, num3) calc2 = calc(num1, operation1, calc2) calc2 = calc(calc2, operation3, num4) except ZeroDivisionError: calc2 = 0 if calc2 == 24: return case2 # Case 3 : ( num1 'operation1' num2 ) 'operation2' ( num3 'operation3' num4 ) case3 = f"( {num1} {operation1} {num2} ) {operation2} ( {num3} {operation3} {num4} ) = 24" try: calc31 = calc(num1, operation1, num2) calc32 = calc(num3, operation3, num4) calc3 = calc(calc31, operation2, calc32) except ZeroDivisionError: calc3 = 0 if calc3 == 24: return case3 # Case 4 : num1 'operation1' ( ( num2 'operation2' num3 ) 'operation3' num4 ) case4 = f"{num1} {operation1} ( ( {num2} {operation2} {num3} ) {operation3} {num4} ) = 24" try: calc4 = calc(num2, operation2, num3) calc4 = calc(calc4, operation3, num4) calc4 = calc(num1, operation1, calc4) except ZeroDivisionError: calc4 = 0 if calc4 == 24: return case4 # Case 5 : num1 'operation1' ( num2 'operation2' ( num3 'operation3' num4 ) ) case5 = f"{num1} {operation1} ( {num2} {operation2} ( {num3} {operation3} {num4} ) ) = 24" try : calc5 = calc(num3, operation3, num4) calc5 = calc(num2, operation2, calc5) calc5 = calc(num1, operation1, calc5) except ZeroDivisionError: calc5 = 0 if calc5 == 24: return case5 return 'No Solutions' # calc function for you with doctest def calc(num1, op, num2): """Return a result for operation between num1 and num2 Examples and Doctest : >>> calc(2, "+", 3) 5 >>> calc(2, "-", 3) -1 >>> calc(2, "*", 3) 6 >>> calc(2, "/", 2) 1.0 """ if op == "+": return num1 + num2 elif op == "-": return num1 - num2 elif op == "*": return num1 * num2 elif op == "/": return num1 / num2 #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() if len(nums) != 4: print(f"Hey, an idiot sandwich! How dare you write {len(nums)} numbers instead of 4 numbers! ") else : for i in range(len(nums)): nums[i] = int(nums[i]) cases = generate_all_combinations(nums, '+-*/') print(calculate_parentheses(cases))
# 6330437021 (20) 273 (2021-02-22 01:25) def calc(A,op,B): if (A==None) or (B==None): C=None elif op=="+": C=A+B elif op=="-": C=A-B elif op=="*": C=A*B elif op=="/" and B!=0: C=A/B else: C=None return C #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() num_list = [] for x in nums: num_list += [int(x)] D=generate_all_combinations( num_list,"+-*/" ) for x in D: N1=x[0] N2=x[2] N3=x[4] N4=x[6] OP1=x[1] OP2=x[3] OP3=x[5] E=calc(N1,OP1,N2) F=calc(E,OP2,N3) G=calc(F,OP3,N4) if G == 24: print("(", "(", N1, OP1, N2, ")", OP2, N3, ")", OP3, N4, "=", int(G)) break E=calc(N3,OP3,N4) F=calc(N2,OP2,E) G=calc(N1,OP1,F) if G==24: print(N1, OP1, "(", N2, OP2, "(", N3, OP3, N4, ")", ")", "=", int(G)) break E=calc(N1,OP1,N2) F=calc(N3,OP3,N4) G=calc(E,OP2,F) if G==24: print("(", N1, OP1, N2, ")", OP2, "(", N3, OP3, N4, ")", "=", int(G)) break E=calc(N2,OP2,N3) F=calc(N1,OP1,E) G=calc(F,OP3,N4) if G==24: print("(", N1, OP1, "(", N2, OP2, N3, ")", ")", OP3, N4, "=", int(G)) break E=calc(N2,OP2,N3) F=calc(E,OP3,N4) G=calc(N1,OP1,F) if G==24: print(N1, OP1, "(", "(", N2, OP2, N3, ")", OP3, N4, ")", "=", int(G)) break if G!=24: print("No Solutions")
# 6330438721 (17.84) 274 (2021-02-22 16:27) def calc(num1, op, num2): global r if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if float(num2) != 0: r = float(num1) / float(num2) else: r = math.inf return r def bracket(c): global answer if calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) == 24 : #( ( 1 + 2 ) + 3 ) + 4 answer = "( ( "+str(c[0])+" "+str(c[1])+" "+str(c[2])+" ) "+str(c[3])+" "+str(c[4])+" ) "+str(c[5])+" "+str(c[6])+" = 24" elif calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) == 24 : #( 1 + ( 2 + 3 ) ) + 4 anwser = "( "+str(c[0])+" "+str(c[1])+" ( "+str(c[2])+" "+str(c[3])+" "+str(c[4])+" ) ) "+str(c[5])+" "+str(c[6])+" = 24" elif calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])) == 24 : #( 1 + 2 ) + ( 3 + 4 ) answer = "( "+str(c[0])+" "+str(c[1])+" "+str(c[2])+" ) "+str(c[3])+" ( "+str(c[4])+" "+str(c[5])+" "+str(c[6])+" )"+" = 24" elif calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) == 24 : #1 + ( ( 2 + 3 ) + 4 ) answer = str(c[0])+" "+str(c[1])+" ( ( "+str(c[2])+" "+str(c[3])+" "+str(c[4])+" ) "+str(c[5])+" "+str(c[6])+" )"+" = 24" elif calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) == 24 : #1 + ( 2 + ( 3 + 4 ) ) answer = str(c[0])+" "+str(c[1])+" ( "+str(c[2])+" "+str(c[3])+" ( "+str(c[4])+" "+str(c[5])+" "+str(c[6])+" ) )"+" = 24" else: answer = "No solutions" return answer #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_list = nums.split() ... ... cases = generate_all_combinations( nums_list, '+-*/' ) for c in cases: if bracket(c) != "No solutions": break print(answer)
# 6330439321 (20) 275 (2021-02-21 23:21) # --------------------------------------------------------- def calc(num1, op, num2): # if divided by zero occurs if not num1 or not num2: return None if op == '+': ans = num1 + num2 elif op == '-': ans = num1 - num2 elif op == '*': ans = num1 * num2 # detecting dividing by zero elif op == '/': if num2: ans = num1 / num2 else: ans = None return ans # --------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] cases = generate_all_combinations(nums, '+-*/') # brute force answer = list() for c in cases: # set var n1, n2, n3, n4 = c[0], c[2], c[4], c[6] op1, op2, op3 = c[1], c[3], c[5] # formation I if calc(calc(calc(n1, op1, n2), op2, n3), op3, n4) == 24: formation = '( ( {} {} {} ) {} {} ) {} {}'.format(n1, op1, n2, op2, n3, op3, n4) answer = c break # formation II if calc(calc(n1, op1, calc(n2, op2, n3)), op3, n4) == 24: formation = '( {} {} ( {} {} {} ) ) {} {}'.format(n1, op1, n2, op2, n3, op3, n4) answer = c break # formation III if calc(calc(n1, op1, n2), op2, calc(n3, op3, n4)) == 24: formation = '( {} {} {} ) {} ( {} {} {} )'.format(n1, op1, n2, op2, n3, op3, n4) answer = c break # formation IV if calc(n1, op1, calc(calc(n2, op2, n3), op3, n4)) == 24: formation = '{} {} ( ( {} {} {} ) {} {} )'.format(n1, op1, n2, op2, n3, op3, n4) answer = c break # formation V if calc(n1, op1, calc(n2, op2, calc(n3, op3, n4))) == 24: formation = '{} {} ( {} {} ( {} {} {} ) )'.format(n1, op1, n2, op2, n3, op3, n4) answer = c break if answer: print(formation, '= 24') else: print('No Solutions')
# 6330440921 (20) 276 (2021-02-19 17:53) def cal(num1, op, num2): if op == '+': ans = float(num1) + float(num2) elif op == '-': ans = float(num1) - float(num2) elif op == '*': ans = float(num1) * float(num2) elif op == '/': if float(num2) == 0: ans = 0 else: ans = float(num1) / float(num2) return ans def cal_all1(case): # ['1', '+', '2', '+', '3', '+', '4'] subcase = [int(e) for e in case[0::2]] op = [e for e in case[1::2]] ans12 = cal(subcase[0], op[0], subcase[1]) ans23 = cal(ans12, op[1], subcase[2]) ans34 = cal(ans23, op[2], subcase[3]) return ans34 def cal_all2(case): subcase = [int(e) for e in case[0::2]] op = [e for e in case[1::2]] ans12 = cal(subcase[1], op[1], subcase[2]) ans23 = cal(subcase[0], op[0], ans12) ans34 = cal(ans23, op[2], subcase[3]) return ans34 def cal_all3(case): subcase = [int(e) for e in case[0::2]] op = [e for e in case[1::2]] ans12 = cal(subcase[0], op[0], subcase[1]) ans23 = cal(subcase[2], op[2], subcase[3]) ans34 = cal(ans12, op[1], ans23) return ans34 def cal_all4(case): subcase = [int(e) for e in case[0::2]] op = [e for e in case[1::2]] ans12 = cal(subcase[1], op[1], subcase[2]) ans23 = cal(ans12, op[2], subcase[3]) ans34 = cal(subcase[0], op[0], ans23) return ans34 def cal_all5(case): subcase = [int(e) for e in case[0::2]] op = [e for e in case[1::2]] ans12 = cal(subcase[2], op[2], subcase[3]) ans23 = cal(subcase[1], op[1], ans12) ans34 = cal(subcase[0], op[0], ans23) return ans34 #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations(nums, '+-*/' ) for case in cases: subcase = [str(e) for e in case[0::2]] op = [e for e in case[1::2]] if cal_all1(case) == 24: print('( ( ' + (subcase[0]), (op[0]), (subcase[1]), ')', (op[1]), (subcase[2]), ')', (op[2]), (subcase[3]), '= 24') break elif cal_all2(case) == 24: print('(', (subcase[0]), (op[0]), '(', (subcase[1]), op[1], (subcase[2]), ') )', (op[2]), (subcase[3]), '= 24') break elif cal_all3(case) == 24: print('(', (subcase[0]), (op[0]), (subcase[1]), ')', op[1], '(', (subcase[2]), (op[2]), (subcase[3]), ') = 24') break elif cal_all4(case) == 24: print(subcase[0], op[0], '( (', subcase[1], op[1], subcase[2], ')', op[2], subcase[3], ') = 24') break elif cal_all5(case) == 24: print(subcase[0], op[0], '(', subcase[1], op[1], '(', subcase[2], op[2], subcase[3], ') ) = 24') break elif case == cases[-1]: print('No Solutions') break
# 6330441521 (20) 277 (2021-02-21 00:21) def cal (num1,op,num2): if op == "+": return num1 + num2 if op == "-": return num1 - num2 if op == "*": return num1*num2 if num2 == 0: return math.inf return num1/num2 def solve(cases): for case in cases: A,x,B,y,C,z,D = case if cal(cal(cal(A,x,B),y,C),z,D) == 24: print("( (",A,x,B,")",y,C,")",z,D,"= 24") return if cal(cal(A,x,cal(B,y,C)),z,D) == 24: print("(",A,x,"(",B,y,C,") )",z,D,"= 24") return if cal(cal(A,x,B),y,cal(C,z,D)) == 24: print("(",A,x,B,")",y,"(",C,z,D,") = 24") return if cal(A,x,cal(cal(B,y,C),z,D)) == 24: print(A,x,"( (",B,y,C,")",z,D,") = 24") return if cal(A,x,cal(B,y,cal(C,z,D))) == 24: print(A,x,"(",B,y,"(",C,z,D,") ) = 24") return print("No Solutions") #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [] num_list = nums.split() for d in range (0,4): num_list[d] = int(num_list[d]) cases = generate_all_combinations(num_list,'+-*/' ) solve(cases)
# 6330443821 (6) 278 (2021-02-21 22:54) def blac(lst): new_list = [] for i in range(len(lst)): lst1 = [] lst1 = lst[i] * 5 lst1.append(")") lst1.append(")") lst1.insert(32, "(") lst1.insert(30, "(") lst1.insert(28, ")") lst1.insert(26, ")") lst1.insert(23, "(") lst1.insert(24, "(") lst1.insert(21, ")") lst1.insert(18, "(") lst1.insert(17, ")") lst1.insert(14, "(") lst1.insert(12, ")") lst1.insert(13, ")") lst1.insert(9, "(") lst1.insert(7, "(") lst1.insert(5, ")") lst1.insert(3, ")") lst1.insert(0, "(") lst1.insert(0, "(") new_list.append(lst1) return new_list def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = 0 else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() num = [] for i in range(len(nums)): num.append(int(nums[i])) cases = generate_all_combinations( num, '+-*/' ) end = False for n in range(1536): for i in range(5): try: if not end and blac(cases)[n][i*11:i*11+11:1][0] == '(' and blac(cases)[n][i*11:i*11+11:1][1] == '(' and blac(cases)[n][i*11:i*11+11:1][5] == ')' and blac(cases)[n][i*11:i*11+11:1][8] == ')': a = calc(blac(cases)[n][i*11:i*11+11:1][2], blac(cases)[n][i*11:i*11+11:1][3], blac(cases)[n][i*11:i*11+11:1][4]) b = calc(a, blac(cases)[n][i*11:i*11+11:1][6], blac(cases)[n][i*11:i*11+11:1][7]) c = calc(b, blac(cases)[n][i*11:i*11+11:1][9], blac(cases)[n][i*11:i*11+11:1][10]) if c == 24: #print(blac(cases)[n][i*11:i*11+11:1]) m = [] for y in blac(cases)[n][i*11:i*11+11:1]: m.append(str(y)) print(" ".join(m), "= 24") end = True break elif not end and blac(cases)[n][i*11:i*11+11:1][0] == '(' and blac(cases)[n][i*11:i*11+11:1][3] == '(' and blac(cases)[n][i*11:i*11+11:1][7] == ')' and blac(cases)[n][i*11:i*11+11:1][8] == ')': a = calc(blac(cases)[n][i*11:i*11+11:1][4], blac(cases)[n][i*11:i*11+11:1][5], blac(cases)[n][i*11:i*11+11:1][6]) b = calc(a, blac(cases)[n][i*11:i*11+11:1][2], blac(cases)[n][i*11:i*11+11:1][1]) c = calc(b, blac(cases)[n][i*11:i*11+11:1][9], blac(cases)[n][i*11:i*11+11:1][10]) if c == 24: m = [] for y in blac(cases)[n][i*11:i*11+11:1]: m.append(str(y)) print(" ".join(m), "= 24") end = True break elif not end and blac(cases)[n][i*11:i*11+11:1][0] == '(' and blac(cases)[n][i*11:i*11+11:1][4] == ')' and blac(cases)[n][i*11:i*11+11:1][6] == '(' and blac(cases)[n][i*11:i*11+11:1][10] == ')': a = calc(blac(cases)[n][i*11:i*11+11:1][1], blac(cases)[n][i*11:i*11+11:1][2], blac(cases)[n][i*11:i*11+11:1][3]) b = calc(blac(cases)[n][i*11:i*11+11:1][7], blac(cases)[n][i*11:i*11+11:1][8], blac(cases)[n][i*11:i*11+11:1][9]) c = calc(a, blac(cases)[n][i*11:i*11+11:1][5], b) if c == 24: m = [] for y in blac(cases)[n][i*11:i*11+11:1]: m.append(str(y)) print(" ".join(m), "= 24") end = True break elif not end and blac(cases)[n][i*11:i*11+11:1][2] == '(' and blac(cases)[n][i*11:i*11+11:1][3] == '(' and blac(cases)[n][i*11:i*11+11:1][7] == ')' and blac(cases)[n][i*11:i*11+11:1][10] == ')': a = calc(blac(cases)[n][i*11:i*11+11:1][4], blac(cases)[n][i*11:i*11+11:1][5], blac(cases)[n][i*11:i*11+11:1][6]) b = calc(a, blac(cases)[n][i*11:i*11+11:1][8], blac(cases)[n][i*11:i*11+11:1][9]) c = calc(b, blac(cases)[n][i*11:i*11+11:1][1], blac(cases)[n][i*11:i*11+11:1][0]) if c == 24: m = [] for y in blac(cases)[n][i*11:i*11+11:1]: m.append(str(y)) print(" ".join(m), "= 24") end = True break elif not end and blac(cases)[n][i*11:i*11+11:1][2] == '(' and blac(cases)[n][i*11:i*11+11:1][5] == '(' and blac(cases)[n][i*11:i*11+11:1][9] == ')' and blac(cases)[n][i*11:i*11+11:1][10] == ')': a = calc(blac(cases)[n][i*11:i*11+11:1][6], blac(cases)[n][i*11:i*11+11:1][7], blac(cases)[n][i*11:i*11+11:1][8]) b = calc(blac(cases)[n][i*11:i*11+11:1][3], blac(cases)[n][i*11:i*11+11:1][4], a) c = calc(blac(cases)[n][i*11:i*11+11:1][0], blac(cases)[n][i*11:i*11+11:1][1], b) if c == 24: m = [] for y in blac(cases)[n][i*11:i*11+11:1]: m.append(str(y)) print(" ".join(m), "= 24") end = True break except: print("No Solutions") end = True break if end == False: print("No Solutions")
# 6330445021 (15.2) 279 (2286-11-21 00:46) def opr(a, o, b): j = 0 if o == '+': return a + b if o == '-': return a - b if o == '*': return a * b if o == '/' and b != 0: return a / b j = 1 return 0 #ในกรณีที่มีการหารด้วย 0 โปรแกรมจะส่งคำตอบกลับเหมือนการคูณ #ซึ่งจะไม่มีปัญหาเนื่องจากจะมีกรณีที่เป็น คูณ มาก่อน หาร เสมอ def final(case, x): #global x A,a,B,b,C,c,D = case if opr(opr(opr(A,a,B),b,C),c,D) == 24: print('(','(',A,a,B,')',b,C,')',c,D) x += 1 elif opr(opr(A,a,B),c,opr(C,c,D)) == 24: print('(','(',A,a,B,')',c,'(',C,c,D,')',')') x += 1 elif opr(opr(A,a,opr(B,b,C)),c,D) == 24: print('(',A,a,'(',B,b,C,')',')',c,D) x += 1 elif opr(A,a,opr(opr(B,b,C),c,D)) == 24: print(A,a,'(','(',B,b,C,')',c,D,')') x += 1 elif opr(A,a,opr(B,b,opr(C,c,D))) == 24: print(A,a,'(',B,b,'(',C,c,D,')',')') x += 1 return x #--------------------------------------------------------- nums = input('Enter 4 integers: ') nl = [int(e) for e in nums.split()] x = 0 cases = generate_all_combinations(nl, '+-*/' ) for i in cases: x = final(i, x) if x == 1: break if x == 0: print('No Solutions')
# 6330446721 (20) 280 (2021-02-20 11:32) def calc(num1, op,num2): if op == "+" : return num1 + num2 if op == "-" : return num1 - num2 if op == "*" : return num1 * num2 if op == "/" and num2 == 0: return 1e6 if op == "/" : return num1 / num2 ############ def foo(seq) : n1 = int(seq[0]) o1 = seq[1] n2 = int(seq[2]) o2 = seq[3] n3 = int(seq[4]) o3 = seq[5] n4 = int(seq[6]) #form 1 : fo = calc(calc(calc(n1,o1,n2),o2,n3),o3,n4) fo01 = "("+" "+"("+" "+str(n1)+" "+str(o1)+" "\ +str(n2)+" "+")"+" "+str(o2)+" "+str(n3)+" "+")"+" "+str(o3)+" "+str(n4) return [fo,fo01] ############ def foo1(seq) : n1 = int(seq[0]) o1 = seq[1] n2 = int(seq[2]) o2 = seq[3] n3 = int(seq[4]) o3 = seq[5] n4 = int(seq[6]) fo1 = calc(calc(n1,o1,calc(n2,o2,n3)),o3,n4) fo11 = "("+" "+str(n1)+" "+str(o1)+" "+"("+" "+str(n2)+" "+str(o2)+" "\ +str(n3)+" "+")"+" "+")"+" "+str(o3)+" "+str(n4) return[fo1,fo11] ############ def foo2(seq) : n1 = int(seq[0]) o1 = seq[1] n2 = int(seq[2]) o2 = seq[3] n3 = int(seq[4]) o3 = seq[5] n4 = int(seq[6]) fo2 = calc((calc(n1,o1,n2)),o2,(calc(n3,o3,n4))) fo21 = "("+" "+str(n1)+" "+str(o1)+" "+str(n2)+" "+")"+" "\ +str(o2)+" "+"("+" "+str(n3)+" "+str(o3)+" "+str(n4)+" "+")" return[fo2,fo21] ############ def foo3(seq) : n1 = int(seq[0]) o1 = seq[1] n2 = int(seq[2]) o2 = seq[3] n3 = int(seq[4]) o3 = seq[5] n4 = int(seq[6]) fo3 = calc(n1,o1,calc(calc(n2,o2,n3),o3,n4)) fo31 = str(n1)+" "+str(o1)+" "+"("+" "+"("+" "+str(n2)+" "+str(o2)+" "+str(n3)\ +" "+")"+" "+str(o3)+" "+str(n4)+" "+")" return[fo3,fo31] ############ def foo4(seq) : n1 = int(seq[0]) o1 = seq[1] n2 = int(seq[2]) o2 = seq[3] n3 = int(seq[4]) o3 = seq[5] n4 = int(seq[6]) fo4 = calc(n1,o1,calc(n2,o2,calc(n3,o3,n4))) fo41 = str(n1)+" "+str(o1)+" "+"("+" "+str(n2)+" "+str(o2)+" "+"("+" "+str(n3)\ +" "+str(o3)+" "+str(n4)+" "+")"+" "+")" return[fo4,fo41] #--------------------------------------------------------- num_list = input("Enter 4 integers: ").split() operators = ["+","-","*","/"] #print(num_list[0]) #print(operators[0]) ... ... cases = generate_all_combinations( num_list, operators ) #print(cases) ans = "" for i in range(len(cases)) : array = cases[i] a,A = foo(array) b,B = foo1(array) c,C = foo2(array) d,D = foo3(array) e,E = foo4(array) if a == 24: ans = (A)+" "+"="+" "+"24" break elif b == 24: ans = (B)+" "+"="+" "+"24" break elif c == 24: ans = (C)+" "+"="+" "+"24" break elif d == 24: ans = (D)+" "+"="+" "+"24" break elif e == 24: ans = (E)+" "+"="+" "+"24" break else: ans = ("No Solutions") print(ans) # print(x) ...
# 6330447321 (20) 281 (2021-02-22 13:56) def calc(num1,operation,num2): if operation=='+': r=num1+num2 elif operation=='-': r=num1-num2 elif operation=='*': r=num1*num2 elif operation=='/': if num2 == 0: r = 0 return r else: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] operation='+-*/' cases = generate_all_combinations(nums, '+-*/' ) z = 0 for i in range(len(cases)): a,b,c,d = [e for e in cases[i][::2] ] #nums e,f,g = [e for e in cases[i][1::2]] #operation r1 = calc(calc(calc(a,e,b),f,c),g,d) r2 = calc(calc(a,e,calc(b,f,c)),g,d) r3 = calc(calc(a,e,b),f,calc(c,g,d)) r4 = calc(a,e,calc(calc(b,f,c),g,d)) r5 = calc(a,e,calc(b,f,calc(c,g,d))) x = [r1,r2,r3,r4,r5] if 24 in x: z = 1 pl = x.index(24) if pl == 0: print("( (",a,e,b,')',f,c,')',g,d,'= 24') elif pl ==1: print('(',a,e,'(',b,f,c,') )',g,d,'= 24') elif pl ==2: print('(',a,e,b,")",f,"(",c,g,d,")",'= 24') elif pl ==3: print(a,e,'( (',b,f,c,")",g,d,")",'= 24') elif pl ==4: print(a,e,'(',b,f,'(',c,g,d,") )",'= 24') break if z != 1: print('No Solutions')
# 6330448021 (20) 282 (2021-02-22 01:07) nums = input('Enter 4 integers: ') nums = nums.split(" ") cases = generate_all_combinations( nums, '+-*/' ) bobo = False for x in cases : exp1 = ['(','('] + x[:3] + [')'] + x[3:5] + [')'] + x[5:] exp2 = ['('] + x[:2] + ["("] + x[2:5] + [')',')'] + x[5:] exp3 = ['('] + x[:3] + [")"] + [x[3]] + ['('] + x[4:] + [")"] exp4 = x[:2] + ["("] + ["("] + x[2:5] + [")"] + x[5:] + [")"] exp5 = x[:2] + ["("] + x[2:4] + ["("] + x[4:] + [")",")"] EXP = [exp1,exp2,exp3,exp4,exp5] for exp in EXP : try : exp_join = ''.join(exp) exp_eval = eval(exp_join) if exp_eval == 24 and not bobo : bobo = True print(" ".join(exp),"=","24") except ZeroDivisionError : pass if not bobo : print("No Solutions")
# 6330449621 (20) 283 (2021-02-22 18:42) def cal(num1, op, num2): if num1 is None or num2 is None : return None if op == "+" : n = num1 + num2 elif op == "-" : n = num1 - num2 elif op == "*" : n = num1 * num2 elif op == "/" : if num2 != 0 : n = num1 / num2 else: n = None return n #--------------------------------------------------------- nums = input('Enter 4 integers: ') number = [int(n) for n in nums.split()] cases = generate_all_combinations( number, '+-*/' ) check = False for i in cases: if cal(cal(cal(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24 : solution = "( ( {} {} {} ) {} {} ) {} {}".format(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) print(solution + " " + "= 24") check = True break elif cal(cal(i[0],i[1],cal(i[2],i[3],i[4])),i[5],i[6]) == 24 : solution = "( {} {} ( {} {} {} ) ) {} {}".format(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) print(solution + " " + "= 24") check = True break elif cal(cal(i[0],i[1],i[2]),i[3],cal(i[4],i[5],i[6])) == 24 : solution = "( {} {} {} ) {} ( {} {} {} )".format(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) print(solution + " " + "= 24") check = True break elif cal(i[0],i[1],cal(cal(i[2],i[3],i[4]),i[5],i[6])) == 24 : solution = "{} {} ( ( {} {} {} ) {} {} )".format(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) print(solution + " " + "= 24") check = True break elif cal(i[0],i[1],cal(i[2],i[3],cal(i[4],i[5],i[6]))) == 24 : solution = "{} {} ( {} {} ( {} {} {} ) )".format(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) print(solution + " " + "= 24") check = True break else : print("No Solutions")
# 6330450121 (20) 284 (2021-02-22 00:15) def calc(firstnum,operator,secondnum): if firstnum=='error' or secondnum=='error': r='error' elif operator=='+': r=firstnum+secondnum elif operator=='-': r=firstnum-secondnum elif operator=='*': r=firstnum*secondnum elif (operator=='/') and (secondnum!=0): r=firstnum/secondnum else: r='error' return r #--------------------------------------------------------- condition=True nums = input('Enter 4 integers: ') nums=[int(n) for n in nums.split()] cases = generate_all_combinations( nums, '+-*/' ) for a in range(len(cases)): n1=cases[a][0] n2=cases[a][2] n3=cases[a][4] n4=cases[a][6] o1=cases[a][1] o2=cases[a][3] o3=cases[a][5] #first line b=calc(n1,o1,n2) c=str(n1)+' '+str(o1)+' '+str(n2) b=calc(b,o2,n3) b=calc(b,o3,n4) if b==24: print('(','(',c,')',o2,n3,')',o3,n4,'= 24') condition=False break #second line b=calc(n2,o2,n3) c=str(n2)+' '+str(o2)+' '+str(n3) b=calc(n1,o1,b) b=calc(b,o3,n4) if b==24: print('(',n1,o1,'(',c,')',')',o3,n4,'= 24') condition=False break #third line b=calc(n1,o1,n2) strb=str(n1)+' '+str(o1)+' '+str(n2) d=calc(n3,o3,n4) strd=str(n3)+' '+str(o3)+' '+str(n4) b=calc(b,o2,d) if b==24: print('(',strb,')',o2,'(',strd,')','= 24') condition=False break #fourthline b=calc(n2,o2,n3) strb=str(n2)+' '+str(o2)+' '+str(n3) b=calc(b,o3,n4) b=calc(n1,o1,b) if b==24: print(n1,o1,'(','(',strb,')',o3,n4,')','= 24') condition=False break #fifthline b=calc(n3,o3,n4) strb=str(n3)+' '+str(o3)+' '+str(n4) b=calc(n2,o2,b) b=calc(n1,o1,b) if b==24: print(n1,o1,'(',n2,o2,'(',strb,')',')','= 24') condition=False break if condition==True: print('No Solutions')
# 6330452421 (16) 285 (2021-02-19 00:14) def calc(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if float(num2) == 0: r=float('NaN') else: r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( nums.split(), '+-*/' ) Nosol = True for n in cases: if 24.0==calc(calc(calc(n[0],n[1],n[2]),n[3],n[4]),n[5],n[6]): print("(","(",n[0],n[1],n[2],")",n[3],n[4],")",n[5],n[6],"= 24") Nosol = False break elif 24.0==calc(calc(calc(n[2],n[3],n[4]),n[1],n[0]),n[5],n[6]): print("(",n[0],n[1],"(",n[2],n[3],n[4],")",")",n[5],n[6],"= 24") Nosol = False break elif 24.0==calc(calc(n[0],n[1],n[2]),n[3],calc(n[4],n[5],n[6])): print("(",n[0],n[1],n[2],")",n[3],"(",n[4],n[5],n[6],")","= 24") Nosol = False break elif 24.0==calc(n[0],n[1],calc(calc(n[2],n[3],n[4]),n[5],n[6])): print(n[0],n[1],"(","(",n[2],n[3],n[4],")",n[5],n[6],")","= 24") Nosol = False break elif 24.0==calc(n[0],n[1],calc(n[2],n[3],calc(n[4],n[5],n[6]))): print(n[0],n[1],"(",n[2],n[3],"(",n[4],n[5],n[6],")",")","= 24") Nosol = False break if Nosol == True: print("No Solutions")
# 6330453021 (20) 286 (2021-02-20 19:53) def calc(num1, op , num2): r = 0 if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = nums.split() ... ... cases = generate_all_combinations( n, '+-*/' ) ... for i in range(len(cases)): #numbers_part n1 = int(cases[i][0]) n2 = int(cases[i][2]) n3 = int(cases[i][4]) n4 = int(cases[i][6]) #operatos_part op1 = cases[i][1] op2 = cases[i][3] op3 = cases[i][5] if calc(calc(calc(n1, op1, n2 ), op2, n3), op3, n4) == int(24) : #( ( 1 + 2 ) + 3 ) + 4 print('(', '(',str(n1),op1,str(n2),')',op2,str(n3),')',op3,str(n4),'=','24') quit() elif calc(calc(n1, op1, calc(n2, op2, n3)), op3, n4) == int(24): #( 1 + ( 2 + 3 ) ) + 4 print('(',str(n1),op1,'(',str(n2),op2,str(n3),')',')',op3,str(n4),'=','24') quit() elif calc(calc(n1, op1, n2), op2, calc(n3, op3, n4)) == int(24): #( 1 + 2 ) + ( 3 + 4 ) print('(',str(n1),op1,str(n2),')',op2,'(',str(n3),op3,str(n4),')','=','24') quit() elif calc(n1, op1, calc(calc(n2, op2, n3), op3, n4)) == int(24): #1 + ( ( 2 + 3 ) + 4 ) print(str(n1),op1,'(','(',str(n2),op2,str(n3),')',op3,str(n4),')','=','24') quit() elif calc(n1, op1, calc(n2, op2, calc(n3, op3, n4))) == int(24): #1 + ( 2 + ( 3 + 4 ) ) print(str(n1),op1,'(',str(n2),op2,'(',str(n3),op3,str(n4),')',')','=','24') quit() else: t = False if not t == True: print('No Solutions')
# 6330454721 (20) 287 (2021-02-21 16:48) def calc(num1,operation,num2) : if operation == "+" : r = num1+num2 if operation == "-" : r = num1-num2 if operation == "*" : r = num1*num2 if operation == "/" and num2 != 0 : r = num1/num2 if operation == "/" and num2 == 0 : r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() num_list = [int(nums[0]),int(nums[1]),int(nums[2]),int(nums[3])] operators = "+-*/" cases = generate_all_combinations(num_list, operators) i = 0 while i in range(len(cases)) : one = cases[i][0] op1 = cases[i][1] two = cases[i][2] op2 = cases[i][3] three = cases[i][4] op3 = cases[i][5] four = cases[i][6] result1 = calc((calc((calc(one,op1,two)),op2,three)),op3,four) result2 = calc((calc(one,op1,(calc(two,op2,three)))),op3,four) result3 = calc((calc(one,op1,two)),op2,(calc(three,op3,four))) result4 = calc(one,op1,(calc((calc(two,op2,three)),op3,four))) result5 = calc(one,op1,(calc(two,op2,(calc(three,op3,four))))) if result1 == 24 : print("(","(",one,op1,two,")",op2,three,")",op3,four,"=","24") break if result2 == 24 : print("(",one,op1,"(",two,op2,three,")",")",op3,four,"=","24") break if result3 == 24 : print("(",one,op1,two,")",op2,"(",three,op3,four,")","=","24") break if result4 == 24 : print(one,op1,"(","(",two,op2,three,")",op3,four,")","=","24") break if result5 == 24 : print(one,op1,"(",two,op2,"(",three,op3,four,")",")","=","24") break i += 1 if i == len(cases)-1 : one = cases[i][0] op1 = cases[i][1] two = cases[i][2] op2 = cases[i][3] three = cases[i][4] op3 = cases[i][5] four = cases[i][6] result1 = calc((calc((calc(one,op1,two)),op2,three)),op3,four) result2 = calc((calc(one,op1,(calc(two,op2,three)))),op3,four) result3 = calc((calc(one,op1,two)),op2,(calc(three,op3,four))) result4 = calc(one,op1,(calc((calc(two,op2,three)),op3,four))) result5 = calc(one,op1,(calc(two,op2,(calc(three,op3,four))))) if result1 == 24 : print("(","(",one,op1,two,")",op2,three,")",op3,four,"=","24") break if result2 == 24 : print("(",one,op1,"(",two,op2,three,")",")",op3,four,"=","24") break if result3 == 24 : print("(",one,op1,two,")",op2,"(",three,op3,four,")","=","24") break if result4 == 24 : print(one,op1,"(","(",two,op2,three,")",op3,four,")","=","24") break if result5 == 24 : print(one,op1,"(",two,op2,"(",three,op3,four,")",")","=","24") break else : print("No Solutions") break
# 6330455321 (20) 288 (2021-02-19 22:59) def calc(num1, op, num2): num1 = float(num1) num2 = float(num2) r = 0 if op == '+': r = num1 + num2 elif op == '*': r = num1 * num2 elif op == '-': r = num1 - num2 elif op == "/" and num2 != 0: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)) : c = " " if calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) == 24 : c = cases[i] print("( (",c[0],c[1],c[2],")",c[3],c[4],")",c[5],c[6],"= 24") break elif calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) == 24 : c = cases[i] print("(",c[0],c[1],"(",c[2],c[3],c[4],") )",c[5],c[6],"= 24") break elif calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) == 24 : c = cases[i] print("(",c[0],c[1],c[2],")",c[3],"(",c[4],c[5],c[6],")","= 24") break elif calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) == 24 : c = cases[i] print(c[0],c[1],"(","(",c[2],c[3],c[4],")",c[5],c[6],")","= 24") break elif calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) == 24 : c = cases[i] print(c[0],c[1],"(",c[2],c[3],"(",c[4],c[5],c[6],") )","= 24") break if c == " " : print("No Solutions")
# 6330458221 (20) 289 (2021-02-20 19:25) def calc(num1, op, num2): global r if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/' and float(num2) != 0: r = float(num1) / float(num2) return str(r) #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations( nums, '+-*/' ) a = 1 for i in range(len(cases)) : if float(calc(calc(calc(cases[i][0], cases[i][1], cases[i][2]), cases[i][3], cases[i][4]), cases[i][5], cases[i][6])) == 24 and float(cases[i][2]) != 0 and float(cases[i][4]) != 0 and float(cases[i][6]) != 0 : print('(','(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],'=',24) a = 0 break elif float(calc(calc(cases[i][0], cases[i][1], calc(cases[i][2], cases[i][3], cases[i][4])), cases[i][5], cases[i][6])) == 24 and float(calc(cases[i][2], cases[i][3], cases[i][4])) != 0 and float(cases[i][4]) != 0 and float(cases[i][6]) != 0 : print('(',cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],cases[i][4],')',')',cases[i][5],cases[i][6],'=',24) a = 0 break elif float(calc(calc(cases[i][0], cases[i][1], cases[i][2]), cases[i][3], calc(cases[i][4], cases[i][5], cases[i][6]))) == 24 and float(cases[i][2]) != 0 and float(calc(cases[i][4], cases[i][5], cases[i][6])) != 0 and float(cases[i][6]) != 0 : print('(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')','=',24) a = 0 break elif float(calc(cases[i][0], cases[i][1], calc(calc(cases[i][2], cases[i][3], cases[i][4]), cases[i][5], cases[i][6]))) == 24 and float(calc(cases[i][2], cases[i][3], cases[i][4])) != 0 and float(cases[i][4]) != 0 and float(cases[i][6]) != 0 : print(cases[i][0],cases[i][1],'(','(',cases[i][2],cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],')','=',24) a = 0 break elif float(calc(cases[i][0], cases[i][1], calc(cases[i][2], cases[i][3], calc(cases[i][4], cases[i][5], cases[i][6])))) == 24 and float(calc(cases[i][2], cases[i][3], calc(cases[i][4], cases[i][5], cases[i][6]))) != 0 and float(calc(cases[i][4], cases[i][5], cases[i][6])) != 0 and float(cases[i][6]) != 0 : print(cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')',')','=',24) a = 0 break if a == 1 : print('No Solutions')
# 6330460421 (14) 290 (2021-02-20 17:17) def calc(num1, op, num2): if op == '+': r = int(num1) + int(num2) elif op == "-": r = int(num1) - int(num2) elif op == "*": r = int(num1) * int(num2) elif op == "/": r = int(num1) / int(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) #[1,+,2,+,3,+,4] for i in range(len(cases)): try: r1 = calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) r2 = calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) r3 = calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) r4 = calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) r5 = calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) except: pass if r1 == 24: print("(","(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],"= 24") break elif r2 == 24: print("(",cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],cases[i][4],")",")",cases[i][5],cases[i][6],"= 24") break elif r3 == 24: print("(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")","= 24") break elif r4 == 24: print(cases[i][0],cases[i][1],"(","(",cases[i][2],cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],")","= 24") break elif r5 == 24: print(cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")",")","= 24") break if r1 != 24 and r2 != 24 and r3 != 24 and r4 != 24 and r5 != 24: print("No Solutions")
# 6330461021 (20) 291 (2021-02-21 22:32) def calc(num1, operation, num2): if num1 == "undefined" or num2 == "undefined": r = "undefined" else: if operation == "+": r = num1 + num2 elif operation == "-": r = num1 - num2 elif operation == "*": r = num1 * num2 elif operation == "/": if num2 == 0: r = "undefined" else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_list = [int(e) for e in nums.split()] cases = generate_all_combinations(nums_list, '+-*/') for i in cases: s1 = calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) if s1 == "undefined": s1 = 0 if s1 == 24:break s2 = calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) if s2 == "undefined": s2 = 0 if s2 == 24:break s3 = calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) if s3 == "undefined": s3 = 0 if s3 == 24:break s4 = calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) if s4 == "undefined": s4 = 0 if s4 == 24:break s5 = calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) if s5 == "undefined": s5 = 0 if s5 == 24:break if s1 == 24: print("( ( "+str(i[0])+ " " + str(i[1]) + " " + str(i[2])+" ) "+str(i[3])+ " " + str(i[4])+" ) "+ str(i[5])+ " " + str(i[6]) + " = 24") elif s2 == 24: print("( "+ str(i[0])+ " " + str(i[1]) + " ( " + str(i[2]) + " " + str(i[3]) + " " + str(i[4]) + " ) ) " + str(i[5]) + " " + str(i[6]) + " = 24") elif s3 == 24: print("( " + str(i[0]) + " " + str(i[1]) + " " + str(i[2]) + " ) " + str(i[3]) + " ( " + str(i[4]) + " " + str(i[5]) + " " + str(i[6]) + " )" + " = 24") elif s4 == 24: print(str(i[0]) + " " + str(i[1]) + " ( ( " + str(i[2]) + " " + str(i[3]) + " " + str(i[4]) + " ) " + str(i[5]) + " " + str(i[6]) + " )" + " = 24" ) elif s5 == 24: print(str(i[0]) + " " + str(i[1]) + " ( " + str(i[2]) + " " + str(i[3]) + " ( " + str(i[4]) + " " + str(i[5]) + " " + str(i[6]) + " ) )" + " = 24" ) else: print("No Solutions")
# 6330462721 (14.14) 292 (2021-02-18 21:44) def calc(num1,op,num2): import math if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0 : r = num1 / num2 else : r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] cases = generate_all_combinations( nums , '+-*/' ) for k in range(len(cases)) : #แบบย่อย 1 a = calc(cases[k][0],cases[k][1],cases[k][2]) a = calc(calc(cases[k][0],cases[k][1],cases[k][2]),cases[k][3],cases[k][4]) a = calc(calc(calc(cases[k][0],cases[k][1],cases[k][2]),cases[k][3],cases[k][4]),cases[k][5],cases[k][6]) if a == 24 : print("(",cases[k][0],cases[k][1],cases[k][2],")",cases[k][3],cases[k][4],")",cases[k][5],cases[k][6],"= 24") break #แบบย่อย 2 b = calc(cases[k][2],cases[k][3],cases[k][4]) b = calc(cases[k][0],cases[k][1],b) b = calc(b,cases[k][5],cases[k][6]) if b == 24 : print("(",cases[k][0],cases[k][1],"(",cases[k][2],cases[k][3],cases[k][4],")",cases[k][5],cases[k][6],")","= 24") break #แบบย่อย 3 c = calc(cases[k][0],cases[k][1],cases[k][2]) d = calc(cases[k][4],cases[k][5],cases[k][6]) c = calc(c,cases[k][3],d) if c == 24 : print("(",cases[k][0],cases[k][1],cases[k][2],")",cases[k][3],"(",cases[k][4],cases[k][5],cases[k][6],")","= 24") break #แบบย่อย 4 d = calc(cases[k][2],cases[k][3],cases[k][4]) d = calc(d,cases[k][5],cases[k][6]) d = calc(cases[k][0],cases[k][1],d) if d == 24 : print(cases[k][0],cases[k][1],"(","(",cases[k][2],cases[k][3],cases[k][4],")",cases[k][5],cases[k][6],")","= 24") break #แบบย่อย 5 e = calc(cases[k][4],cases[k][5],cases[k][6]) e = calc(cases[k][2],cases[k][3],e) e = calc(cases[k][0],cases[k][1],e) if e == 24 : print(cases[k][0],cases[k][1],"(",cases[k][2],cases[k][3],"(",cases[k][4],cases[k][5],cases[k][6],")",")","= 24") break if not (a == 24 or b == 24 or c == 24 or d == 24 or e == 24) : print("No Solutions")
# 6330463321 (20) 293 (2021-02-22 22:35) def calc( num1, op, num2): num_1 = float(num1) num_2 = float(num2) if op =='+': r = num_1 + num_2 elif op =='-': r = num_1 - num_2 elif op == '*': r = num_1 * num_2 elif op == '/' and num_2 == 0 : r = math.inf elif op == '/': r = num_1 / num_2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... ... cases = generate_all_combinations( nums.split(), '+-*/' ) x = 0 for e in cases: if calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6]) == 24: print('('+' '+'('+' '+str(e[0])+' '+e[1]+' '+str(e[2])+' '+')'+' '+e[3]+' '+str(e[4])+' '+')'+' '+e[5]+' '+str(e[6])+' '+'='+' '+'24') x += 1 break elif calc(calc(e[0],e[1],(calc (e[2],e[3],e[4]))),e[5],e[6]) == 24: print('('+' '+str(e[0])+' '+e[1]+' '+'('+' '+str(e[2])+' '+e[3]+' '+str(e[4])+' '+')'+' '+')'+' '+e[5]+' '+str(e[6])+' '+'='+' '+'24') x += 1 break elif calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6])) == 24: print('('+' '+str(e[0])+' '+e[1]+' '+str(e[2])+' '+')'+' '+e[3]+' '+'('+' '+str(e[4])+' '+e[5]+' '+str(e[6])+' '+')'+' '+'='+' '+'24') x += 1 break elif calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6])) == 24: print(str(e[0])+' '+e[1]+' '+'('+' '+'('+' '+str(e[2])+' '+e[3]+' '+str(e[4])+' '+')'+' '+e[5]+' '+str(e[6])+' '+')'+' '+'='+' '+'24') x += 1 break elif calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6]))) == 24: print(str(e[0])+' '+e[1]+' '+'('+' '+str(e[2])+' '+e[3]+' '+'('+' '+str(e[4])+' '+e[5]+' '+str(e[6])+' '+')'+' '+')'+' '+'='+' '+'24') x += 1 break if x == 0: print('No Solutions')
# 6330464021 (20) 294 (2021-02-22 01:14) #--------------------------------------------------------- nums = input('Enter 4 integers: ') no=nums.split() cases = generate_all_combinations( no, '+-*/' ) def calc(a,op,b): if op=='+': r=a+b elif op=='-': r=a-b elif op=='*': r=a*b elif op=='/': if b!=0: r=a/b else: r=math.inf return r for i in range(len(cases)): n1,n2,n3,n4=cases[i][::2] o1,o2,o3=cases[i][1::2] q=calc(calc((calc(int(n1),o1,int(n2))),o2,int(n3)),o3,int(n4)) if q == 24: print('( (',n1,o1,n2,')',o2,n3,')',o3,n4,'= 24') break elif calc(calc(int(n1),o1,calc(int(n2),o2,int(n3))),o3,int(n4))==24: print('(',n1,o1,'(',n2,o2,n3,') )',o3,n4,'= 24') break elif calc(calc(int(n1),o1,int(n2)),o2,calc(int(n3),o3,int(n4)))==24: print('(',n1,o1,n2,')',o2,'(',n3,o3,n4,')','= 24') break elif calc(int(n1),o1,calc(calc(int(n2),o2,int(n3)),o3,int(n4)))==24: print(n1,o1,'( (',n2,o2,n3,')',o3,n4,')','= 24') break elif calc(int(n1),o1,calc(int(n2),o2,calc(int(n3),o3,int(n4))))==24: print(n1,o1,'(',n2,o2,'(',n3,o3,n4,') )','= 24') break if i==len(cases)-1: print('No Solutions')
# 6330465621 (19.82) 295 (2021-02-19 09:45) def calc(num1, op, num2 ): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = math.inf else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = (int(a) for a in nums.split()) cases = generate_all_combinations( nums, '+-*/' ) for x in cases: result1 = calc(calc((calc(x[0],x[1],x[2])),x[3],x[4]),x[5],x[6]) result2 = calc(calc(x[0],x[1],(calc(x[2],x[3],x[4]))),x[5],x[6]) result3 = calc((calc(x[0],x[1],x[2])),x[3],(calc(x[4],x[5],x[6]))) result4 = calc(x[0],x[1],calc((calc(x[2],x[3],x[4])),x[5],x[6])) result5 = calc(x[0],x[1],calc(x[2],x[3],calc(x[4],x[5],x[6]))) if result1 == 24 : print("( (",x[0],x[1],x[2],")",x[3],x[4],")",x[5],x[6],"=","24") break elif result2 == 24 : print("( ",x[0],x[1],"(",x[2],x[3],x[4],") )",x[5],x[6],"=","24") break elif result3 == 24 : print("(",x[0],x[1],x[2],")",x[3],"(",x[4],x[5],x[6],")","=","24") break elif result4 == 24 : print(x[0],x[1],"( (",x[2],x[3],x[4],")",x[5],x[6],")","=","24") break elif result5 == 24 : print(x[0],x[1],"(",x[2],x[3],"(",x[4],x[5],x[6],") )","=","24") break if result1 != 24 and result2 != 24 and result3 != 24 and result4 != 24 and result5 != 24 : print("No Solution")
# 6330466221 (20) 296 (2021-02-22 23:51) def calc( num1, op, num2 ): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0: r = num1 / num2 else: r = 99999999999999999999999999999999 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x = nums.split() x[0] = int(x[0]) x[1] = int(x[1]) x[2] = int(x[2]) x[3] = int(x[3]) cases = generate_all_combinations( x , '+-*/' ) for i in range(len(cases)): c1 = calc((calc((calc(cases[i][0], cases[i][1], cases[i][2])), cases[i][3],cases[i][4])), cases[i][5], cases[i][6]) c2 = calc((calc(cases[i][0], cases[i][1], (calc(cases[i][2], cases[i][3], cases[i][4])))), cases[i][5], cases[i][6]) c3 = calc(calc(cases[i][0], cases[i][1], cases[i][2]), cases[i][3] ,(calc(cases[i][4], cases[i][5], cases[i][6]))) c4 = calc(cases[i][0], cases[i][1],(calc(calc(cases[i][2], cases[i][3] ,cases[i][4]), cases[i][5] ,cases[i][6]))) c5 = calc(cases[i][0], cases[i][1] ,calc(cases[i][2], cases[i][3] ,calc(cases[i][4], cases[i][5] ,cases[i][6]))) if c1 == 24: print('( ( '+str(cases[i][0])+' '+str(cases[i][1])+' '+str(cases[i][2])+' ) '+str(cases[i][3])+' '+str(cases[i][4])+' ) '+str(cases[i][5])+' '+str(cases[i][6])+' = 24') break elif c2 == 24: print('( '+str(cases[i][0])+' '+str(cases[i][1])+' ( '+str(cases[i][2])+' '+str(cases[i][3])+' '+str(cases[i][4])+' ) ) '+str(cases[i][5])+' '+str(cases[i][6])+' = 24') break elif c3 == 24: print('( '+str(cases[i][0])+' '+str(cases[i][1])+' '+str(cases[i][2])+' ) '+str(cases[i][3])+' ( '+str(cases[i][4])+' '+str(cases[i][5])+' '+str(cases[i][6])+' ) = 24') break elif c4 == 24: print(str(cases[i][0])+' '+str(cases[i][1])+' ( ( '+str(cases[i][2])+' '+str(cases[i][3])+' '+str(cases[i][4])+' ) '+str(cases[i][5])+' '+str(cases[i][6])+' ) = 24') break elif c5 == 24: print(str(cases[i][0])+' '+str(cases[i][1])+' ( '+str(cases[i][2])+' '+str(cases[i][3])+' ( '+str(cases[i][4])+' '+str(cases[i][5])+' '+str(cases[i][6])+' ) ) = 24') break elif i == len(cases)-1: print('No Solutions')
# 6330467921 (20) 297 (2021-02-19 16:09) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0: r = num1 / num2 else: r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.split()] ... cases = generate_all_combinations( num_list, '+-*/' ) ... subcase = 0 for i in range(len(cases)): c = cases[i] a = calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) if a == 24: subcase = 1 break else: a = calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) if a == 24: subcase = 2 break else: a = calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])) if a == 24: subcase = 3 break else: a = calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) if a == 24: subcase = 4 break else: a = calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) if a == 24: subcase = 5 break if subcase == 1: print("( (",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],"=",int(a)) elif subcase == 2: print("(",cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],cases[i][4],") )",cases[i][5],cases[i][6],"=",int(a)) elif subcase == 3: print("(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],") =",int(a)) elif subcase == 4: print(cases[i][0],cases[i][1],"( (",cases[i][2],cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],") =",int(a)) elif subcase == 5: print(cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],") ) =",int(a)) elif a != 24: print("No Solutions")
# 6330468521 (20) 298 (2021-02-21 23:34) def calc(n1, op1, n2) : if n2 == 0 : if op1 == "+" : r = n1 + n2 elif op1 == "-" : r = n1 - n2 elif op1 == "*" : r = n1 * n2 elif op1 == "/" : r = False else : if op1 == "+" : r = n1 + n2 elif op1 == "-" : r = n1 - n2 elif op1 == "*" : r = n1 * n2 elif op1 == "/" : r = n1 / n2 return r def calc1(c1, op2, n3) : if n3 == 0 : if op2 == "+" : r1 = c1 + n3 elif op2 == "-" : r1 = c1 - n3 elif op2 == "*" : r1 = c1 * n3 elif op2 == "/" : r1 = False else : if op2 == "+" : r1 = c1 + n3 elif op2 == "-" : r1 = c1 - n3 elif op2 == "*" : r1 = c1 * n3 elif op2 == "/" : r1 = c1 / n3 return r1 def calc2(c2_case1, op3, n4) : if n4 == 0 : if op3 == "+" : r2 = c2_case1 + n4 elif op3 == "-" : r2 = c2_case1 - n4 elif op3 == "*" : r2 = c2_case1 * n4 elif op3 == "/" : r2 = False else : if op3 == "+" : r2 = c2_case1 + n4 elif op3 == "-" : r2 = c2_case1 - n4 elif op3 == "*" : r2 = c2_case1 * n4 elif op3 == "/" : r2 = c2_case1 / n4 return r2 def calc3(n2, op2, n3) : if n3 == 0 : if op2 == "+" : r3 = n2 + n3 elif op2 == "-" : r3 = n2 - n3 elif op2 == "*" : r3 = n2 * n3 elif op2 == "/" : r3 = False else : if op2 == "+" : r3 = n2 + n3 elif op2 == "-" : r3 = n2 - n3 elif op2 == "*" : r3 = n2 * n3 elif op2 == "/" : r3 = n2 / n3 return r3 def calc4(n1, op1, c1_case2) : if c1_case2 == 0 : if op1 == "+" : r4 = n1 + c1_case2 elif op1 == "-" : r4 = n1 - c1_case2 elif op1 == "*" : r4 = n1 - c1_case2 elif op1 == "/" : r4 = False else : if op1 == "+" : r4 = n1 + c1_case2 elif op1 == "-" : r4 = n1 - c1_case2 elif op1 == "*" : r4 = n1 * c1_case2 elif op1 == "/" : r4 = n1 / c1_case2 return r4 def calc5(c2_case2, op3, n4) : if n4 == 0 : if op3 == "+" : r5 = c2_case2 + n4 elif op3 == "-" : r5 = c2_case2 - n4 elif op3 == "*" : r5 = c2_case2 * n4 elif op3 == "/" : r5 = False else : if op3 == "+" : r5 = c2_case2 + n4 elif op3 == "-" : r5 = c2_case2 - n4 elif op3 == "*" : r5 = c2_case2 * n4 elif op3 == "/" : r5 = c2_case2 / n4 return r5 def calc6(n1, op1, n2) : if n2 == 0 : if op1 == "+" : r6 = n1 + n2 elif op1 == "-" : r6 = n1 - n2 elif op1 == "*" : r6 = n1 * n2 elif op1 == "/" : r6 = False else : if op1 == "+" : r6 = n1 + n2 elif op1 == "-" : r6 = n1 - n2 elif op1 == "*" : r6 = n1 * n2 elif op1 == "/" : r6 = n1 / n2 return r6 def calc7(n3, op3, n4) : if n4 == 0 : if op3 == "+" : r7 = n3 + n4 elif op3 == "-" : r7 = n3 - n4 elif op3 == "*" : r7 = n3 * n4 elif op3 == "/" : r7 = False else : if op3 == "+" : r7 = n3 + n4 elif op3 == "-" : r7 = n3 - n4 elif op3 == "*" : r7 = n3 * n4 elif op3 == "/" : r7 = n3 / n4 return r7 def calc8(c1_case3, op2, c2_case3) : if c2_case3 == 0 : if op2 == "+" : r8 = c1_case3 + c2_case3 elif op2 == "-" : r8 = c1_case3 - c2_case3 elif op2 == "*" : r8 = c1_case3 * c2_case3 elif op2 == "/" : r8 = False else : if op2 == "+" : r8 = c1_case3 + c2_case3 elif op2 == "-" : r8 = c1_case3 - c2_case3 elif op2 == "*" : r8 = c1_case3 * c2_case3 elif op2 == "/" : r8 = c1_case3 / c2_case3 return r8 def calc9(n2, op2, n3) : if n3 == 0 : if op2 == "+" : r9 = n2 + n3 elif op2 == "-" : r9 = n2 - n3 elif op2 == "*" : r9 = n2 * n3 elif op2 == "/" : r9 = False else : if op2 == "+" : r9 = n2 + n3 elif op2 == "-" : r9 = n2 - n3 elif op2 == "*" : r9 = n2 * n3 elif op2 == "/" : r9 = n2 / n3 return r9 def calc10(c1_case4, op3, n4) : if n4 == 0 : if op3 == "+" : r10 = c1_case4 + n4 elif op3 == "-" : r10 = c1_case4 - n4 elif op3 == "*" : r10 = c1_case4 * n4 elif op3 == "/" : r10 = False else : if op3 == "+" : r10 = c1_case4 + n4 elif op3 == "-" : r10 = c1_case4 - n4 elif op3 == "*" : r10 = c1_case4 * n4 elif op3 == "/" : r10 = c1_case4 / n4 return r10 def calc11(n1, op1, c2_case4) : if c2_case4 == 0 : if op1 == "+" : r11 = n1 + c2_case4 elif op1 == "-" : r11 = n1 - c2_case4 elif op1 == "*" : r11 = n1 * c2_case4 elif op1 == "/" : r11 = False else : if op1 == "+" : r11 = n1 + c2_case4 elif op1 == "-" : r11 = n1 - c2_case4 elif op1 == "*" : r11 = n1 * c2_case4 elif op1 == "/" : r11 = n1 / c2_case4 return r11 def calc12(n3, op3, n4) : if n4 == 0 : if op3 == "+" : r12 = n3 + n4 elif op3 == "-" : r12 = n3 - n4 elif op3 == "*" : r12 = n3 * n4 elif op3 == "/" : r12 = False else : if op3 == "+" : r12 = n3 + n4 elif op3 == "-" : r12 = n3 - n4 elif op3 == "*" : r12 = n3 * n4 elif op3 == "/" : r12 = n3 / n4 return r12 def calc13(n2, op2, c1_case5) : if c1_case5 == 0 : if op2 == "+" : r13 = n2 + c1_case5 elif op2 == "-" : r13 = n2 - c1_case5 elif op2 == "*" : r13 = n2 * c1_case5 elif op2 == "/" : r13 = False else : if op2 == "+" : r13 = n2 + c1_case5 elif op2 == "-" : r13 = n2 - c1_case5 elif op2 == "*" : r13 = n2 * c1_case5 elif op2 == "/" : r13 = n2 / c1_case5 return r13 def calc14(n1, op1, c2_case5) : if c2_case5 == 0 : if op1 == "+" : r14 = n1 + c2_case5 elif op1 == "-" : r14 = n1 - c2_case5 elif op1 == "*" : r14 = n1 * c2_case5 elif op1 == "/" : r14 = False else : if op1 == "+" : r14 = n1 + c2_case5 elif op1 == "-" : r14 = n1 - c2_case5 elif op1 == "*" : r14 = n1 * c2_case5 elif op1 == "/" : r14 = n1 / c2_case5 return r14 #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = nums.split() num1 = int(n[0]) num2 = int(n[1]) num3 = int(n[2]) num4 = int(n[3]) cases = generate_all_combinations( [num1, num2, num3, num4], '+-*/' ) for i in range(len(cases)) : case = cases[i] n1 = int(case[0]) n2 = int(case[2]) n3 = int(case[4]) n4 = int(case[6]) op1 = case[1] op2 = case[3] op3 = case[5] c1_case1 = calc(n1, op1, n2) c2_case1 = calc1(c1_case1, op2, n3) ans_case1 = calc2(c2_case1, op3, n4) c1_case2 = calc3(n2, op2, n3) c2_case2 = calc4(n1, op1, c1_case2) ans_case2 = calc5(c2_case2, op3, n4) c1_case3 = calc6(n1, op1, n2) c2_case3 = calc7(n3, op3, n4) ans_case3 = calc8(c1_case3, op2, c2_case3) c1_case4 = calc9(n2, op2, n3) c2_case4 = calc10(c1_case4, op3, n4) ans_case4 = calc11(n1, op1, c2_case4) c1_case5 = calc12(n3, op3, n4) c2_case5 = calc13(n2, op2, c1_case5) ans_case5 = calc14(n1, op1, c2_case5) if ans_case1 == 24 : print("( ( "+str(case[0])+" "+op1+" "+str(case[2])+" ) "+op2+" "+str(case[4])+" ) "+op3+" "+str(case[6])+" = 24") break elif ans_case2 == 24 : print("( "+str(case[0])+" "+op1+" "+"( "+str(case[2])+" "+op2+" "+str(case[4])+" ) ) "+op3+" "+str(case[6])+" = 24") break elif ans_case3 == 24 : print("( "+str(case[0])+" "+op1+" "+str(case[2])+" ) "+op2+" ( "+str(case[4])+" "+op3+" "+str(case[6])+" )"+" = 24") break elif ans_case4 == 24 : print(str(case[0])+" "+op1+" "+"( ( "+str(case[2])+" "+op2+" "+str(case[4])+" ) "+op3+" "+str(case[6])+" )"+" = 24") break elif ans_case5 == 24 : print(str(case[0])+" "+op1+" "+"( "+str(case[2])+" "+op2+" ( "+str(case[4])+" "+op3+" "+str(case[6])+" ) )"+" = 24") break else : print("No Solutions")
# 6330469121 (16.4) 299 (2021-02-21 17:39) import math def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': if num2==0 : r=math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a=nums.split() nums=[] for i in a: i=(int(i)) nums.append(i) cases = generate_all_combinations ( nums, '+-*/' ) a=0 for e in cases: if calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6])==24: a=24 print('(','(',e[0],e[1],e[2],')',e[3],e[4],')',e[5],e[6]) break if calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6])==24: a=24 print('(',e[0],e[1],'(',e[2],e[3],e[4],')',')',e[5],e[6]) break if calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6]))==24: a=24 print('(',e[0],e[1],e[2],')',e[3],'(',e[4],e[5],e[6],')') break if calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6]))==24: a=24 print(e[0],e[1],'(','(',e[2],e[3],e[4],')',e[5],e[6],')') break if calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6])))==24: a=24 print(e[0],e[1],'(',e[2],e[3],'(',e[4],e[5],e[6],')',')') break if a !=24:print('No Solutions')
# 6330470721 (20) 300 (2021-02-20 22:22) #--------------------------------------------------------- nums = input('Enter 4 integers: ') x = nums.split() cases = generate_all_combinations( x , '+-*/' ) def calc(num1,op,num2): if op == "+": r = num1 + num2 elif op == "-": r = num1 - num2 elif op == "*": r = num1 * num2 elif op == "/": if num2 == 0: r = 0 else: r = num1 / num2 return r def pattern1(case): x1 = calc(int(case[0]),case[1],int(case[2])) x2 = calc(x1,case[3],int(case[4])) x3 = calc(x2,case[5],int(case[6])) return x3 def pattern2(case): x1 = calc(int(case[2]),case[3],int(case[4])) x2 = calc(int(case[0]),case[1],x1) x3 = calc(x2,case[5],int(case[6])) return x3 def pattern3(case): x1 = calc(int(case[0]),case[1],int(case[2])) x2 = calc(int(case[4]),case[5],int(case[6])) x3 = calc(x1,case[3],x2) return x3 def pattern4(case): x1 = calc(int(case[2]),case[3],int(case[4])) x2 = calc(x1,case[5],int(case[6])) x3 = calc(int(case[0]),case[1],x2) return x3 def pattern5(case): x1 = calc(int(case[4]),case[5],int(case[6])) x2 = calc(int(case[2]),case[3],x1) x3 = calc(int(case[0]),case[1],x2) return x3 found = False for case in cases: if pattern1(case) == 24: print(f"( ( {case[0]} {case[1]} {case[2]} ) {case[3]} {case[4]} ) {case[5]} {case[6]} = 24") found = True break elif pattern2(case) == 24: print(f"( {case[0]} {case[1]} ( {case[2]} {case[3]} {case[4]} ) ) {case[5]} {case[6]} = 24") found = True break elif pattern3(case) == 24: print(f"( {case[0]} {case[1]} {case[2]} ) {case[3]} ( {case[4]} {case[5]} {case[6]} ) = 24") found = True break elif pattern4(case) == 24: print(f"{case[0]} {case[1]} ( ( {case[2]} {case[3]} {case[4]} ) {case[5]} {case[6]} ) = 24") found = True break elif pattern5(case) == 24: print(f"{case[0]} {case[1]} ( {case[2]} {case[3]} ( {case[4]} {case[5]} {case[6]} ) ) = 24") found = True break if found == False: print("No Solutions")
# 6330471321 (18) 301 (2021-02-21 21:20) def calc(num1,op,num2): if op == '+': return num1 + num2 if op == '-': return num1 - num2 if op == '*': return num1 * num2 if op == '/' and num2 != 0: return num1 / num2 else : return 0 def f(x) : if(calc(calc(calc(x[0],x[1],x[2]),x[3],x[4]),x[5],x[6])==24): return 1 if(calc(calc(x[0],x[1],calc(x[2],x[3],x[4])),x[5],x[6])==24): return 2 if(calc(calc(x[0],x[1],x[2]),x[3],calc(x[4],x[5],x[6]))==24): return 3 if(calc(x[0],x[1],calc(calc(x[2],x[3],x[4]),x[5],x[6]))==24): return 4 if(calc(x[0],x[1],calc(x[2],x[3],calc(x[4],x[5],x[6])))==24): return 5 return 0 def f1(li,flag): if flag == 1: li.insert(0,'(') li.insert(1,'(') li.insert(5,')') li.insert(8,')') elif flag == 2: li.insert(1,'(') li.insert(3,'(') li.insert(7,')') li.insert(8,')') elif flag == 3: li.insert(0,'(') li.insert(5,'(') li.insert(4,')') li.insert(10,')') elif flag == 4: li.insert(2,'(') li.insert(3,'(') li.insert(7,')') li.insert(10,')') elif flag == 5: li.insert(2,'(') li.insert(5,'(') li.insert(9,')') li.insert(10,')') return No #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split(' ') nums = [int(i) for i in nums] cases = generate_all_combinations( nums , '+-*/' ) No = 0 for i in range(len(cases)): y = f(cases[i]) if y != 0: No = cases[i] break if No != 0: No = [str(i) for i in No] print(' '.join(f1(No, y))+' = 24') else: print('No Solutions')
# 6330472021 (18) 302 (2021-02-22 21:29) #--------------------------------------------------------- nums = input('Enter 4 integers: ') list=nums.split() num_list=[int(list[0]),int(list[1]),int(list[2]),int(list[3])] cases = generate_all_combinations( num_list, '+-*/' ) for e in cases: number=[e[0],e[2],e[4],e[6]] op=[e[1],e[3],e[5]] def calc(num1,op,num2): if op == '+': r=num1+num2 elif op== '-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/': if num2==0: r=math.inf else: r=num1/num2 return r a=calc(calc(calc(number[0],op[0],number[1]),op[1],number[2]),op[2],number[3]) b=calc(calc(number[0],op[1],calc(number[1],op[1],number[2])),op[2],number[3]) c=calc(calc(number[0],op[0],number[1]),op[1],calc(number[2],op[2],number[3])) d=calc(number[0],op[0],calc(calc(number[1],op[1],number[2]),op[2],number[3])) e=calc(number[0],op[0],calc(number[1],op[1],calc(number[2],op[2],number[3]))) if a==24 or b==24 or c==24 or d==24 or e==24 : break if a==24: print('(','(',str(number[0]),op[0],str(number[1]),')',op[1],str(number[2]),')',op[2],str(number[3]),'=','24') elif b==24: print('(',str(number[0]),op[0],'(',str(number[1]),op[1],str(number[2]),')',')',op[2],str(number[3]),'=','24') elif c==24: print('(',str(number[0]),op[0],str(number[1]),')',op[1],'(',str(number[2]),op[2],str(number[3]),')','=','24') elif d==24: print(str(number[0]),op[0],'(','(',str(number[1]),op[1],str(number[2]),')',op[2],str(number[3]),')','=','24') elif e==24: print(str(number[0]),op[0],'(',str(number[1]),op[1],'(',str(number[2]),op[2],str(number[3]),')',')','=','24') else: print('No Solutions')
# 6330473621 (20) 303 (2021-02-20 03:28) def calc(numb1,op,numb2) : if op == '+' : r = numb1+numb2 elif op == '-' : r = numb1-numb2 elif op == '*' : r = numb1*numb2 elif op == '/' : if numb2 != 0 : r = numb1/numb2 else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() num_list = [0]*4 for i in range(len(nums)) : num_list[i]=int(nums[i]) operators = '+-*/' cases = generate_all_combinations (num_list, operators ) x = 0 for i in range(len(cases)) : x = calc((calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) y = 1 if x == 24 : break x = calc((calc(cases[i][0],cases[i][1],(calc(cases[i][2],cases[i][3],cases[i][4])))),cases[i][5],cases[i][6]) y = 2 if x == 24 : break x = calc((calc(cases[i][0],cases[i][1],cases[i][2])),cases[i][3],(calc(cases[i][4],cases[i][5],cases[i][6]))) y = 3 if x == 24 : break x = calc(cases[i][0],cases[i][1],calc((calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6])) y = 4 if x == 24 : break x = calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) y = 5 if x == 24 : break if x == 24 and y == 1 : print('( ( '+str(cases[i][0])+' '+str(cases[i][1])+' '+str(cases[i][2])+' ) '+str(cases[i][3])+' '+str(cases[i][4])+' ) '+str(cases[i][5])+' '+str(cases[i][6])+' = 24') elif x == 24 and y == 2 : print('( '+str(cases[i][0])+' '+str(cases[i][1])+' ( '+str(cases[i][2])+' '+str(cases[i][3])+' '+str(cases[i][4])+' ) ) '+str(cases[i][5])+' '+str(cases[i][6])+' = 24') elif x == 24 and y == 3 : print('( '+str(cases[i][0])+' '+str(cases[i][1])+' '+str(cases[i][2])+' ) '+str(cases[i][3])+' ( '+str(cases[i][4])+' '+str(cases[i][5])+' '+str(cases[i][6])+' )'+' = 24') elif x == 24 and y == 4 : print(str(cases[i][0])+' '+str(cases[i][1])+' ( ( '+str(cases[i][2])+' '+str(cases[i][3])+' '+str(cases[i][4])+' ) '+str(cases[i][5])+' '+str(cases[i][6])+' )'+' = 24') elif x == 24 and y == 5 : print(str(cases[i][0])+' '+str(cases[i][1])+' ( '+str(cases[i][2])+' '+str(cases[i][3])+' ( '+str(cases[i][4])+' '+str(cases[i][5])+' '+str(cases[i][6])+' ) )'+' = 24') if x != 24 : print('No Solutions')
# 6330474221 (12.08) 304 (2021-02-22 03:19) def cal( num1, op, num2 ): if op =="+": r=int(num1)+int(num2) elif op =="-": r=int(num1)-int(num2) elif op =="*": r=int(num1)*int(num2) elif op =="/": if int(num2)!=0: r=int(num1)/int(num2) else: r=9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') s=nums.split() cases = generate_all_combinations( s, '+-*/' ) for i in range(len(cases)): a1=cal((cal((cal(cases[i][0], cases[i][1], cases[i][2])), cases[i][3],cases[i][4])), cases[i][5], cases[i][6]) a2=cal((cal(cases[i][0], cases[i][1], (cal(cases[i][2], cases[i][3], cases[i][4])))), cases[i][5], cases[i][6]) a3=cal(cal(cases[i][0], cases[i][1], cases[i][2]), cases[i][3] ,(cal(cases[i][4], cases[i][5], cases[i][6]))) a4=cal(cases[i][0], cases[i][1],(cal(cal(cases[i][2], cases[i][3] ,cases[i][4]), cases[i][5] ,cases[i][6]))) a5=cal(cases[i][0], cases[i][1] ,cal(cases[i][2], cases[i][3] ,cal(cases[i][4], cases[i][5] ,cases[i][6]))) if a1==24: print("(","(",str(cases[i][0]),str(cases[i][1]),str(cases[i][2]),")",str(cases[i][3]),str(cases[i][4]),")",str(cases[i][5]),str(cases[i][6]),"= 24") break elif a2 == 24: print("(",str(cases[i][0]),str(cases[i][1]),"(",str(cases[i][2]),str(cases[i][3]),str(cases[i][4]),")",str(cases[i][5]),str(cases[i][6])," = 24") break elif a3 == 24: print("(",str(cases[i][0]),str(cases[i][1]),str(cases[i][2]),")",str(cases[i][3]),"(",str(cases[i][4]),str(cases[i][5]),str(cases[i][6]),")","= 24") break elif a4 == 24: print(str(cases[i][0]),str(cases[i][1]),"(","(",str(cases[i][2]),str(cases[i][3]),str(cases[i][4]),")",str(cases[i][5]),str(cases[i][6]),")","= 24") break elif a5 == 24: print(str(cases[i][0]),str(cases[i][1]),"(",str(cases[i][2]),str(cases[i][3]),"(",str(cases[i][4]),str(cases[i][5]),str(cases[i][6]),")",")","= 24") break elif i == len(cases)-1: print('No Solutions')
# 6330475921 (20) 305 (2021-02-22 22:25) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2==0: r=math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') numssplit=[int(e) for e in nums.split()] #print(numssplit) cases = generate_all_combinations(numssplit, '+-*/' ) for i in range(len(cases)): a1=cases[i][0] o1=cases[i][1] a2=cases[i][2] o2=cases[i][3] a3=cases[i][4] o3=cases[i][5] a4=cases[i][6] form1=calc(calc(calc(a1,o1,a2),o2,a3),o3,a4) form2=calc(calc(a1,o1,calc(a2,o2,a3)),o3,a4) form3=calc(calc(a1,o1,a2),o2,calc(a3,o3,a4)) form4=calc(a1,o1,calc(calc(a2,o2,a3),o3,a4)) form5=calc(a1,o1,calc(a2,o2,calc(a3,o3,a4))) if form1==24: print("(","(",a1,o1,a2,")",o2,a3,")",o3,a4,"= 24") break elif form2==24: print("(",a1,o1,"(",a2,o2,a3,") )",o3,a4,"= 24") break elif form3==24: print("(",a1,o1,a2,")",o2,"(",a3,o3,a4,")","= 24") break elif form4==24: print(a1,o1,"(","(",a2,o2,a3,")",o3,a4,")","= 24") break elif form5==24: print(a1,o1,"(",a2,o2,"(",a3,o3,a4,") )","= 24") break if form1!=24 and form2!=24 and form3!=24 and form4!=24 and form5!=24: print("No Solutions")
# 6330476521 (14) 306 (2021-02-19 17:46) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0: r = num1 / num2 if num2 == 0: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)): c = cases[i] n = c[0::2] op = c[1::2] result1 = calc(calc(calc(n[0],op[0],n[1]),op[1],n[2]),op[2],n[3]) result2 = calc(calc(calc(n[1],op[1],n[2]),op[0],n[0]),op[2],n[3]) result3 = calc(calc(n[0],op[0],n[1]),op[1],calc(n[2],op[2],n[3])) result4 = calc(calc(calc(n[1],op[1],n[2]),op[2],n[3]),op[0],n[0]) result5 = calc(n[0],op[0],calc(n[1],op[1],calc(n[2],op[2],n[3]))) if result1 == 24: print('(','(',n[0],op[0],n[1],')',op[1],n[2],')',op[2],n[3],'= 24') break elif result2 == 24: print('(',n[0],op[0],'(',n[1],op[1],n[2],')',')',op[2],n[3],'= 24') break elif result3 == 24: print('(',n[0],op[0],n[1],')',op[1],'(',n[2],op[2],n[3],')','= 24') break elif result4 == 24: print(n[0],op[0],'(','(',n[1],op[1],n[2],')',op[2],n[3],')','= 24') break elif result5 == 24: print(n[0],op[0],'(',n[1],op[1],'(',n[2],op[2],n[3],')',')','= 24') break if result1 != 24 and result2 != 24 and result3 != 24 and result4 != 24 and result5 != 24: print('No Solutions')
# 6330477121 (20) 307 (2021-02-22 01:01) def calc(Num1, do, Num2): if (Num1 == 'No Have') or (Num2 == 'No Have'): A = 'No Have' elif do == '+': A = Num1 + Num2 elif do == '-': A = Num1 - Num2 elif do == '*': A = Num1 * Num2 elif (do == '/') and (Num2 != 0): A = Num1 / Num2 else: A = 'No Have' return A #--------------------------------------------------------- Get = input('Enter 4 integers: ') Get = Get.split() # print(type(Get[0])) # print(Get) num_list = [] for x in Get: num_list += [int(x)] Change = generate_all_combinations( num_list, '+-*/' ) Get24 = False for x in Change: N1 = x[0] N2 = x[2] N3 = x[4] N4 = x[6] do1 = x[1] do2 = x[3] do3 = x[5] A = calc(N1, do1, N2) B = calc(A, do2, N3) C = calc(B, do3, N4) if C == 24: print('(', '(', N1, do1, N2, ')', do2, N3, ')', do3, N4, '= 24') Get24 = True break A = calc(N2, do2, N3) B = calc(N1, do1, A) C = calc(B, do3, N4) if C == 24: print('(', N1, do1, '(', N2, do2, N3, ')', ')', do3, N4, '= 24') Get24 = True break A = calc(N1, do1, N2) B = calc(N3, do3, N4) C = calc(A, do2, B) if C == 24: print('(', N1, do1, N2, ')', do2, '(', N3, do3, N4, ')', '= 24') Get24 = True break Deepcase1 = calc(N1, do1, calc(calc(N2, do2, N3), do3, N4)) if Deepcase1 == 24: print(N1, do1, '(', '(', N2, do2, N3, ')', do3, N4, ')', '= 24') Get24 = True break Deepcase2 = calc(N1, do1, calc(N2, do2, calc(N3, do3, N4))) if Deepcase2 == 24: print(N1, do1, '(', N2, do2, '(', N3, do3, N4, ')', ')', '= 24') Get24 = True break if not Get24: print('No Solutions')
# 6330478821 (20) 308 (2021-02-22 00:43) def calc(num1, op, num2): if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/': if num2==0: r=math.inf else: r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] cases = generate_all_combinations( nums, '+-*/' ) check=False for i in range(len(cases)): n1=cases[i][0] op1=cases[i][1] n2=cases[i][2] op2=cases[i][3] n3=cases[i][4] op3=cases[i][5] n4=cases[i][6] f1=calc(calc(calc(n1,op1,n2),op2,n3),op3,n4) f2=calc(calc(n1,op1,calc(n2,op2,n3)),op3,n4) f3=calc(calc(n1,op1,n2),op2,calc(n3,op3,n4)) f4=calc(n1,op1,calc(calc(n2,op2,n3),op3,n4)) f5=calc(n1,op1,calc(n2,op2,calc(n3,op3,n4))) if f1==24: print('(','(',n1,op1,n2,')',op2,n3,')',op3,n4,'= 24') check=True break elif f2==24: print('(',n1,op1,'(',n2,op2,n3,')',')',op3,n4,'= 24') check=True break elif f3==24: print('(',n1,op1,n2,')',op2,'(',n3,op3,n4,')','= 24') check=True break elif f4==24: print(n1,op1,'(','(',n2,op2,n3,')',op3,n4,')','= 24') check=True break elif f5==24: print(n1,op1,'(',n2,op2,'(',n3,op3,n4,')',')','= 24') check=True break else: check=False if check==False: print("No Solutions") ...
# 6330481621 (20) 309 (2021-02-22 01:22) def s(num1,operation,num2): if operation =="+": r=num1+num2 elif operation =="-": r=num1-num2 elif operation =="*": r=num1*num2 elif operation =="/": r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a=[int(e) for e in nums.split()] cases = generate_all_combinations(a,'+-*/') for i in range(len(cases)): t=cases[i] try: r1=s(s(s(t[0],t[1],t[2]),t[3],t[4]),t[5],t[6]) r2=s(s(t[0],t[1],s(t[2],t[3],t[4])),t[5],t[6]) r3=s(s(t[0],t[1],t[2]),t[3],s(t[4],t[5],t[6])) r4=s(t[0],t[1],s(s(t[2],t[3],t[4]),t[5],t[6])) r5=s(t[0],t[1],s(t[2],t[3],s(t[4],t[5],t[6]))) except: pass if r1==24: print("(","(",t[0],t[1],t[2],")",t[3],t[4],")",t[5],t[6],"=","24") break if r2==24: print("(",t[0],t[1],"(",t[2],t[3],t[4],")",")",t[5],t[6],"=","24") break if r3==24: print("(",t[0],t[1],t[2],")",t[3],"(",t[4],t[5],t[6],")","=","24") break if r4==24: print(t[0],t[1],"(","(",t[2],t[3],t[4],")",t[5],t[6],")","=","24") break if r5==24: print(t[0],t[1],"(",t[2],t[3],"(",t[4],t[5],t[6],")",")","=","24") break else: print("No Solutions")
# 6330482221 (20) 310 (2021-02-19 13:53) def calc(num1, operators, num2): if operators == '+': r = num1 + num2 elif operators == '-': r = num1 - num2 elif operators == '*': r = num1 * num2 elif operators == '/': if num2 == 0: r = math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() operators = '+-*/' nums = list(map(int,nums)) cases = generate_all_combinations( nums, operators ) for i in range(len(cases)): r1 = calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) r2 = calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) r3 = calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) r4 = calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) r5 = calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) if r1 == 24: print(f'( ( {cases[i][0]} {cases[i][1]} {cases[i][2]} ) {cases[i][3]} {cases[i][4]} ) {cases[i][5]} {cases[i][6]} = 24') break if r2 == 24: print(f'( {cases[i][0]} {cases[i][1]} ( {cases[i][2]} {cases[i][3]} {cases[i][4]} ) ) {cases[i][5]} {cases[i][6]} = 24') break if r3 == 24: print(f'( {cases[i][0]} {cases[i][1]} {cases[i][2]} ) {cases[i][3]} ( {cases[i][4]} {cases[i][5]} {cases[i][6]} ) = 24') break if r4 == 24: print(f'{cases[i][0]} {cases[i][1]} ( ( {cases[i][2]} {cases[i][3]} {cases[i][4]} ) {cases[i][5]} {cases[i][6]} ) = 24') break if r5 == 24: print(f'{cases[i][0]} {cases[i][1]} ( {cases[i][2]} {cases[i][3]} ( {cases[i][4]} {cases[i][5]} {cases[i][6]} ) ) = 24') break else : print("No Solutions")
# 6330483921 (20) 311 (2021-02-22 01:48) def calc(num1,op,num2) : if op == '+' : r = num1 + num2 if op == '-' : r = num1 - num2 if op == '*' : r = num1*num2 if op == '/' : if num2 != 0 : r = num1/num2 if num2 == 0 : r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x=nums.split() for i in range (0,4) : x[i]=int(x[i]) cases = generate_all_combinations( x, '+-*/' ) for i in range (0,len(cases)) : int1=cases[i][0] int2=cases[i][2] int3=cases[i][4] int4=cases[i][6] op1=cases[i][1] op2=cases[i][3] op3=cases[i][5] if calc(calc(calc(int1,op1,int2),op2,int3),op3,int4) == 24 : print('( (',int1,op1,int2,')',op2,int3,')',op3,int4,'= 24') break elif calc(calc(int1,op1,calc(int2,op2,int3)),op3,int4) == 24 : print('(',int1,op1,'(',int2,op2,int3,') )',op3,int4,'= 24') break elif calc(calc(int1,op1,int2),op2,calc(int3,op3,int4)) == 24 : print('(',int1,op1,int2,')',op2,'(',int3,op3,int4,')','= 24') break elif calc(int1,op1,calc(calc(int2,op2,int3),op3,int4)) == 24 : print(int1,op1,'( (',int2,op2,int3,')',op3,int4,')','= 24') break elif calc(int1,op1,calc(int2,op2,calc(int3,op3,int4))) == 24 : print(int1,op1,'(',int2,op2,'(',int3,op3,int4,') )','= 24') break elif i == len(cases)-1 : print('No Solutions')
# 6330484521 (20) 312 (2021-02-22 21:21) #--------------------------------------------------------- nums = input('Enter 4 integers: ') lists=nums.split() a='' k=0 cases = generate_all_combinations( lists, '+-*/' ) for i in cases: s= '('+' '+'('+' '+ i[0]+' '+ i[1]+' '+ i[2]+' '+')'+' '+i[3]+' '+i[4]+' '+')'+' '+i[5]+' '+i[6] if (i[3]=='/' and i[4]=='0') or (i[5]=='/' and i[6]=='0') or (i[1]=='/' and i[2]=='0'): s='0' r= '('+' '+ i[0]+' '+i[1]+' '+'('+' '+i[2] +' '+i[3]+' '+i[4]+' '+')'+' '+')' +' '+i[5]+' '+i[6] if (i[3]=='/' and i[4]=='0') or (i[1]=='/' and eval('('+i[2] +i[3]+i[4]+')')==0) or (i[5]=='/' and i[6]=='0'): r='0' o= '('+' '+ i[0]+' '+i[1]+' '+ i[2]+' '+')'+' '+i[3]+' '+'('+' '+ i[4] +' '+i[5]+' '+i[6]+' '+')' if (i[1]=='/' and i[2]=='0') or (i[5]=='/' and i[6]=='0') or (i[3]=='/' and eval('('+ i[4] +i[5]+i[6]+')')==0): o='0' t= i[0]+' '+ i[1]+' '+ '('+' '+'('+' '+i[2] +' '+i[3]+' '+i[4]+' '+')' +' '+i[5]+' '+i[6]+' '+')' if (i[5]=='/' and i[6]=='0') or (i[3]=='/' and i[4]=='0') or (i[1]=='/' and eval('('+'('+i[2] +i[3]+i[4]+')' +i[5]+i[6]+')')==0): t='0' e= i[0]+' '+i[1]+' '+'('+' '+ i[2]+' '+i[3]+' '+'('+' '+i[4] +' '+i[5]+' '+i[6]+' '+')'+' '+')' if (i[5]=='/' and i[6]=='0') or (i[3]=='/' and eval('('+ i[4] +i[5]+i[6]+')')==0) or (i[1]=='/' and eval('('+ i[2]+i[3]+'('+i[4] +i[5]+i[6]+')'+')')==0) : e='0' if eval(s)==24: print ('{} = {}'.format(s,int(eval(s)))) k=1 break if eval(r)==24: print ('{} = {}'.format(r,int(eval(r)))) k=1 break if eval(o)==24: print ('{} = {}'.format(o,int(eval(o)))) k=1 break if eval(t)==24: print ('{} = {}'.format(t,int(eval(t)))) k=1 break if eval(e)==24: print ('{} = {}'.format(e,int(eval(e)))) k=1 break if k==0: print("No Solutions")
# 6330485121 (18.2) 313 (2021-02-21 19:07) def cal(num1, operators, num2): if operators == '+': r = num1 + num2 elif operators == '-': r = num1 - num2 elif operators == '*': r = num1 * num2 elif operators == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] #[1,2,3,4] cases = generate_all_combinations( nums, '+-*/' ) #[1 , + , 2 , + , 3 , + , 4 ] for i in range(len(cases)): # 1536 try: r1 = cal(cal(cal(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) r2 = cal(cal(cases[i][0],cases[i][1],cal(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) r3 = cal(cal(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cal(cases[i][4],cases[i][5],cases[i][6])) r4 = cal(cases[i][0],cases[i][1],cal(cal(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) r5 = cal(cases[i][0],cases[i][1],cal(cases[i][2],cases[i][3],cal(cases[i][4],cases[i][5],cases[i][6]))) except: pass if r1 == 24: print(f'(({cases[i][0]} {cases[i][1]} {cases[i][2]}) {cases[i][3]} {cases[i][4]}) {cases[i][5]} {cases[i][6]} = 24') break if r2 == 24: print(f'({cases[i][0]} {cases[i][1]} ({cases[i][2]} {cases[i][3]} {cases[i][4]})) {cases[i][5]} {cases[i][6]} = 24') break if r3 == 24: print(f'({cases[i][0]} {cases[i][1]} {cases[i][2]}) {cases[i][3]} ({cases[i][4]} {cases[i][5]} {cases[i][6]}) = 24') break if r4 == 24: print(f'{cases[i][0]} {cases[i][1]} (({cases[i][2]} {cases[i][3]} {cases[i][4]}) {cases[i][5]} {cases[i][6]}) = 24') break if r5 == 24: print(f'{cases[i][0]} {cases[i][1]} ({cases[i][2]} {cases[i][3]} ({cases[i][4]} {cases[i][5]} {cases[i][6]})) = 24') break else: print('No Solutions')
# 6330486821 (20) 314 (2021-02-20 17:21) def cal(n1,op,n2): if op=='+': x = n1 + n2 elif op=='-': x = n1 - n2 elif op=='*': x = n1 * n2 elif op=='/': if n2==math.inf: x = math.inf elif n2==0: x = math.inf else: x = n1 / n2 return x #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = list(map(int,nums.split())) cases = generate_all_combinations(nums,'+-*/') found = True for e in cases: if cal(cal(cal(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6])==24: print(f'( ( {e[0]} {e[1]} {e[2]} ) {e[3]} {e[4]} ) {e[5]} {e[6]} = 24') found = False break elif cal(cal(e[0],e[1],cal(e[2],e[3],e[4])),e[5],e[6])==24: print(f'( {e[0]} {e[1]} ( {e[2]} {e[3]} {e[4]} ) ) {e[5]} {e[6]} = 24') found = False break elif cal(cal(e[0],e[1],e[2]),e[3],cal(e[4],e[5],e[6]))==24: print(f'( {e[0]} {e[1]} {e[2]} ) {e[3]} ( {e[4]} {e[5]} {e[6]} ) = 24') found = False break elif cal(e[0],e[1],cal(cal(e[2],e[3],e[4]),e[5],e[6]))==24: print(f'{e[0]} {e[1]} ( ( {e[2]} {e[3]} {e[4]} ) {e[5]} {e[6]} ) = 24') found = False break elif cal(e[0],e[1],cal(e[2],e[3],cal(e[4],e[5],e[6])))==24: print(f'{e[0]} {e[1]} ( {e[2]} {e[3]} ( {e[4]} {e[5]} {e[6]} ) ) = 24') found = False break if found: print('No Solutions')
# 6330487421 (20) 315 (2021-02-22 23:48) def calc(num1, op, num2): if (num1 == 'no') or (num2 == 'no'): x = 'no' elif op == '+': x = num1 + num2 elif op == '-': x = num1 - num2 elif op == '*': x = num1 * num2 elif (op == '/') and (num2 != 0): x = num1 / num2 else: x = 'no' return x #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() num_list = [] for i in nums: num_list += [int(i)] Change = generate_all_combinations( num_list, '+-*/' ) have24 = False for x in Change: num1 = x[0] num2 = x[2] num3 = x[4] num4 = x[6] op1 = x[1] op2 = x[3] op3 = x[5] A = calc(num1, op1, num2) B = calc(A, op2, num3) C = calc(B, op3, num4) if C == 24: print('(', '(', num1, op1, num2, ')', op2, num3, ')', op3, num4, '= 24') have24 = True break A = calc(num2, op2, num3) B = calc(num1, op1, A) C = calc(B, op3, num4) if C == 24: print('(', num1, op1, '(', num2, op2, num3, ')', ')', op3, num4, '= 24') have24 = True break A = calc(num1, op1, num2) B = calc(num3, op3, num4) C = calc(A, op2, B) if C == 24: print('(', num1, op1, num2, ')', op2, '(', num3, op3, num4, ')', '= 24') have24 = True break Deepcase1 = calc(num1, op1, calc(calc(num2, op2, num3), op3, num4)) if Deepcase1 == 24: print(num1, op1, '(', '(', num2, op2, num3, ')', op3, num4, ')', '= 24') have24 = True break Deepcase2 = calc(num1, op1, calc(num2, op2, calc(num3, op3, num4))) if Deepcase2 == 24: print(num1, op1, '(', num2, op2, '(', num3, op3, num4, ')', ')', '= 24') have24 = True break if not have24: print('No Solutions')
# 6330488021 (20) 316 (2021-02-21 22:27) def calc(num1,op,num2): if op == '+': p = (num1)+(num2) elif op == '-': p = (num1)-(num2) elif op == '*' : p = (num1)*(num2) elif op =='/': if (num2)==0: p = math.inf else: p = (num1)/(num2) return p #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] found = False c = generate_all_combinations( nums, '+-*/' ) for i in range(len(c)): n1,op1,n2,op2,n3,op3,n4 = [k for k in c[i] ] #form1 f1_1=calc(n1,op1,n2) f1_2=calc(f1_1,op2,n3) sum_f1=calc(f1_2,op3,n4) #form2 f2_1=calc(n2,op2,n3) f2_2=calc(n1,op1,f2_1) sum_f2=calc(f2_2,op3,n4) #form3 f3_1 =calc(n1,op1,n2) f3_2=calc(n3,op3,n4) sum_f3=calc(f3_1,op2,f3_2) #form4 f4_1= calc(n2,op2,n3) f4_2=calc(f4_1,op3,n4) sum_f4=calc(n1,op1,f4_2) #form 5 f5_1=calc(n3,op3,n4) f5_2=calc(n2,op2,f5_1) sum_f5=calc(n1,op1,f5_2) if sum_f1 == 24: found = True print('(','(',n1,op1,n2,')',op2,n3,')',op3,n4,'= 24') break elif sum_f2==24: found = True print('(',str(n1),op1,'(',str(n2),op2,str(n3),')',')',op3,str(n4),'= 24') break elif sum_f3==24: found = True print('(',n1,op1,n2,')',op2,'(',n3,op3,n4,')','= 24') break elif sum_f4==24: found = True print(n1,op1,'(','(',n2,op2,n3,')',op3,n4,')','= 24') break elif sum_f5==24: found = True print(n1,op1,'(',n2,op2,'(',n3,op3,n4,')',')','= 24') break else: found == False if found == False: print('No Solutions')
# 6330489721 (14) 317 (2021-02-22 09:50) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int(e) for e in nums.split()] cases = generate_all_combinations( nums, '+-*/' ) for x in range(len(cases)): try: y1 = calc(calc(calc(cases[x][0],cases[x][1],cases[x][2]),cases[x][3],cases[x][4]),cases[x][5],cases[x][6]) y2 = calc(calc(cases[x][0],cases[x][1],calc(cases[x][2],cases[x][3],cases[x][4])),cases[x][5],cases[x][6]) y3 = calc(calc(cases[x][0],cases[x][1],cases[x][2]),cases[x][3],calc(cases[x][4],cases[x][5],cases[x][6])) y4 = calc(cases[x][0],cases[x][1],calc(calc(cases[x][2],cases[x][3],cases[x][4]),cases[x][5],cases[x][6])) y5 = calc(cases[x][0],cases[x][1],calc(cases[x][2],cases[x][3],calc(cases[x][4],cases[x][5],cases[x][6]))) except: pass if y1 == 24: print('(' , '(' , cases[x][0] , cases[x][1] , cases[x][2] , ')' , cases[x][3] , cases[x][4] , ')' , cases[x][5] , cases[x][6] , '=' , '24') break elif y2 == 24: print('(' , cases[x][0] , cases[x][1] ,'(' , cases[x][2] , cases[x][3] , cases[x][4] , ')' , ')' , cases[x][5] , cases[x][6] , '=' , '24') break elif y3 == 24: print('(' , cases[x][0] , cases[x][1] , cases[x][2] , ')' , cases[x][3] , '(' , cases[x][4] , cases[x][5] , cases[x][6] , ')' , '=' , '24') break elif y4 == 24: print('(' , cases[x][0] , cases[x][1] , '(' , '(' ,cases[x][2] , cases[x][3] , cases[x][4] , ')' , cases[x][5] , cases[x][6] , ')' , '=' , '24') break elif y5 == 24: print('(' , cases[x][0] , cases[x][1] , '(' ,cases[x][2] , cases[x][3] , '(' , cases[x][4] , cases[x][5] , cases[x][6] , ')', ')' , '=' , '24') break else: print('No Solutions')
# 6330491921 (20) 318 (2021-02-21 19:43) def calc(num1, op, num2): num1 = float(num1) num2 = float(num2) if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2!=0 : r = num1 / num2 else: r = 5555 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split(' ') cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)): a = cases[i][0] b = cases[i][2] c = cases[i][4] d = cases[i][6] s1 = cases[i][1] s2 = cases[i][3] s3 = cases[i][5] if calc(calc(calc(a,s1,b),s2,c),s3,d) == 24: answer = '('' ''('' '+a+' '+s1+' '+b+' '')'' '+s2+' '+c+' '')'' '+s3+' '+d break elif calc(calc(a,s1,b),s2,calc(c,s3,d)) == 24: answer = '('' '+a+' '+s1+' '+b+' '')'' '+s2+' ''('' '+c+' '+s3+' '+d+' '')' break elif calc(calc(a,s1,calc(b,s2,c)),s3,d) == 24: answer = '('' '+a+' '+s1+' ''('' '+b+' '+s2+' '+c+' '')'' '')'' '+s3+' '+d break elif calc(a,s1,calc(calc(b,s2,c),s3,d)) == 24: answer = a+' '+s1+' ''('' ''('' '+b+' '+s2+' '+c+' '')'' '+s3+' '+d+' '')' break elif calc(a,s1,calc(b,s2,calc(c,s3,d))) == 24: answer = a+' '+s1+' ''('' '+b+' '+s2+' ''('' '+c+' '+s3+' '+d+' '')'' '')' break else: answer = 'No Solutions' if answer =='No Solutions': print('No Solutions') else: print(answer+' = 24')
# 6330492521 (20) 319 (2021-02-21 10:50) def f(num1, op, num2): num1 = float(num1) num2 = float(num2) if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2!=0 : r = num1 / num2 else: r = 999 return r def p(num1, op, num2): pp='( '+num1+' '+op+' '+num2+' )' return pp #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split(' ') cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)): a,b,c,d= cases[i][0], cases[i][2], cases[i][4], cases[i][6] op1,op2,op3 = cases[i][1], cases[i][3], cases[i][5] if f(f(f(a,op1,b),op2,c),op3,d) == 24: rs = p(p(p(a,op1,b),op2,c),op3,d) break elif f(f(a,op1,b),op2,f(c,op3,d))==24: rs = p(p(a,op1,b),op2,p(c,op3,d)) break elif f(f(a,op1,f(b,op2,c)),op3,d)==24: rs = p(p(a,op1,p(b,op2,c)),op3,d) break elif f(a,op1,f(f(b,op2,c),op3,d)) ==24: rs = p(a,op1,p(p(b,op2,c),op3,d)) break elif f(a,op1 ,f(b,op2,f(c,op3,d))) == 24: rs = p(a,op1 ,p(b,op2,p(c,op3,d))) break else: rs = 'No Solutions' if rs !='No Solutions': print(rs[2:-2]+' = 24') else: print('No Solutions')
# 6330494821 (20) 320 (2021-02-19 16:32) def calc(num1,op,num2): if op=='+': r=float(num1)+float(num2) elif op=='-': r=float(num1)-float(num2) elif op=='*': r=float(num1)*float(num2) elif op=='/': r=float(num1)/float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() cases = generate_all_combinations(nums,'+-*/') z=0 for i in range(len(cases)): if cases[i][1]!='/' or cases[i][2]!=0: if cases[i][3]!='/' or cases[i][4]!=0: if cases[i][5]!='/' or cases[i][6]!=0: if calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6])==24 : print('(','(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],'=','24') z=1 break if cases[i][3]!='/' or cases[i][4]!=0: if cases[i][1]!='/' or calc(cases[i][2],cases[i][3],cases[i][4])!=0: if cases[i][5]!='/' or cases[i][6]!=0: if calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6])==24: print('(',cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],cases[i][4],')',')',cases[i][5],cases[i][6],'=','24') z=1 break if cases[i][1]!='/' or cases[i][2]!=0: if cases[i][5]!='/' or cases[i][6]!=0: if cases[i][3]!='/' or calc(cases[i][4],cases[i][5],cases[i][6])!=0: if calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))==24: print('(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')','=','24') z=1 break if cases[i][3]!='/' or cases[i][4]!=0: if cases[i][5]!='/' or cases[i][6]!=0: if cases[i][1]!='/' or calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])!=0: if calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6]))==24: print(cases[i][0],cases[i][1],'(','(',cases[i][2],cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],')','=','24') z=1 break if cases[i][5]!='/' or cases[i][6]!=0: if cases[i][3]!='/' or calc(cases[i][4],cases[i][5],cases[i][6])!=0: if cases[i][1]!='/' or calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))!=0: if calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])))==24: print(cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')',')','=','24') z=1 break if z==0: print('No Solutions')
# 6330495421 (20) 321 (2021-02-22 17:01) def calc(num1, operation, num2): if operation=="+": r=num1+num2 elif operation=="-": r=num1-num2 elif operation=="*": r=num1*num2 elif operation=="/" and num2!=0: r=num1/num2 else: num2=10000000000000 r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() x=0 cases = generate_all_combinations( nums, '+-*/' ) for i in cases: if calc(calc(calc(int(i[0]),i[1],int(i[2])),i[3],int(i[4])),i[5],+int(i[6]))==24: x+=1 print ("("+" "+"("+" "+i[0]+" "+i[1]+" "+i[2]+" "+")"+" "+i[3]+" "+i[4]+" "+")"+" "+i[5]+" "+i[6]+" "+"="+" "+"24") break elif calc(calc(int(i[0]),i[1],calc(int(i[2]),i[3],int(i[4]))),i[5],int(i[6]))==24: x+=1 print ("("+" "+i[0]+" "+i[1]+" "+"("+" "+i[2]+" "+i[3]+" "+i[4]+" "+")"+" "+")"+" "+i[5]+" "+i[6]+" "+"="+" "+"24") break elif calc(calc(int(i[0]),i[1],int(i[2])),i[3],calc(int(i[4]),i[5],int(i[6])))==24: x+=1 print ("("+" "+i[0]+" "+i[1]+" "+i[2]+" "+")"+" "+i[3]+" "+"("+" "+i[4]+" "+i[5]+" "+i[6]+" "+")"+" "+"="+" "+"24") break elif calc(int(i[0]),i[1],calc(calc(int(i[2]),i[3],int(i[4])),i[5],int(i[6])))==24: x+=1 print (i[0]+" "+i[1]+" "+"("+" "+"("+" "+i[2]+" "+i[3]+" "+i[4]+" "+")"+" "+i[5]+" "+i[6]+" "+")"+" "+"="+" "+"24") break elif calc(int(i[0]),i[1],calc(int(i[2]),i[3],calc(int(i[4]),i[5],int(i[6]))))==24: x+=1 print (i[0]+" "+i[1]+" "+"("+" "+i[2]+" "+i[3]+" "+"("+" "+i[4]+" "+i[5]+" "+i[6]+" "+")"+" "+")"+" "+"="+" "+"24") break if x==0: print ("No Solutions")
# 6330496021 (20) 322 (2021-02-22 20:18) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( nums.split(), '+-*/' ) for i in range(len(cases)): a = cases[i] a[0] = int(a[0]) a[2] = int(a[2]) a[4] = int(a[4]) a[6] = int(a[6]) q = calc(a[0], a[1], a[2]) q = calc(q, a[3], a[4]) q = calc(q, a[5], a[6]) if q == 24: ans = "("+" "+"("+" "+str(a[0])+" "+str(a[1])+" "+str(a[2])+" "+")"+" "+str(a[3])+" "+str(a[4])+" "+")"+" "+str(a[5])+" "+str(a[6])+" "+"="+" "+"24" break #---------------------------------------------- for i in range(len(cases)): a = cases[i] a[0] = int(a[0]) a[2] = int(a[2]) a[4] = int(a[4]) a[6] = int(a[6]) w = calc(a[2], a[3], a[4]) if w>0: w = calc(a[0], a[1], w) else: continue w = calc(w, a[5], a[6]) if w == 24: ans = "("+" "+str(a[0])+" "+str(a[1])+" "+"("+" "+str(a[2])+" "+str(a[3])+" "+str(a[4])+" "+")"+" "+")"+" "+str(a[5])+" "+str(a[6])+" "+"="+" "+"24" break #---------------------------------------------- for i in range(len(cases)): a = cases[i] a[0] = int(a[0]) a[2] = int(a[2]) a[4] = int(a[4]) a[6] = int(a[6]) e = calc(a[0], a[1], a[2]) e_ = calc(a[4], a[5], a[6]) if e_>0: e = calc(e, a[3], e_) else: continue if e == 24: ans = "("+" "+str(a[0])+" "+str(a[1])+" "+str(a[2])+" "+")"+" "+str(a[3])+" "+"("+" "+str(a[4])+" "+str(a[5])+" "+str(a[6])+" "+")"+" "+"="+" "+"24" break #---------------------------------------------- for i in range(len(cases)): a = cases[i] a[0] = int(a[0]) a[2] = int(a[2]) a[4] = int(a[4]) a[6] = int(a[6]) r = calc(a[2], a[3], a[4]) r = calc(r, a[5], a[6]) if r>0: r = calc(a[0], a[1], r) else: continue if r == 24: ans = str(a[0])+" "+str(a[1])+" "+"("+" "+"("+" "+str(a[2])+" "+str(a[3])+" "+str(a[4])+" "+")"+" "+str(a[5])+" "+str(a[6])+" "+")"+" "+"="+" "+"24" break #---------------------------------------------- for i in range(len(cases)): a = cases[i] a[0] = int(a[0]) a[2] = int(a[2]) a[4] = int(a[4]) a[6] = int(a[6]) t = calc(a[4], a[5], a[6]) if t>0: t = calc(a[2], a[3], t) else: continue if t>0: t = calc(a[0], a[1], t) else: continue if t == 24: ans = str(a[0])+" "+str(a[1])+" "+"("+" "+str(a[2])+" "+str(a[3])+" "+"("+" "+str(a[4])+" "+str(a[5])+" "+str(a[6])+" "+")"+" "+")"+" "+"="+" "+"24" break if 24 in [q,w,e,r,t]: print(ans) else: print("No Solutions")
# 6330497721 (19.64) 323 (2021-02-18 23:36) def calc(num1, op, num2): x=0 if op =='+': x = float(num1)+float(num2) elif op =='-': x = float(num1)-float(num2) elif op =='*': x = float(num1)*float(num2) elif op =='/': if float(num2)==0: x = -99999999 else: x = float(num1)/float(num2) return x #--------------------------------------------------------- nums = input('Enter 4 integers: ') info=nums.split() ans=[] cases = generate_all_combinations( info, '+-*/' ) for i in range(len(cases)): for e in range(5): if e==0: i3 = calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) if i3==24.0: ans.append(['( ( '+cases[i][0]+' '+cases[i][1]+' '+cases[i][2]+' ) '+cases[i][3]+' '+cases[i][4]+' ) '+cases[i][5]+' '+cases[i][6]]) elif e==1: i3 = calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) if i3==24.0: ans.append(['( '+cases[i][0]+' '+cases[i][1]+' ( '+cases[i][2]+' '+cases[i][3]+' '+cases[i][4]+' ) ) '+cases[i][5]+' '+cases[i][6]]) elif e==2: i3 = calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) if i3==24.0: ans.append(['( '+cases[i][0]+' '+cases[i][1]+' '+cases[i][2]+' ) '+cases[i][3]+' ( '+cases[i][4]+' '+cases[i][5]+' '+cases[i][6]+" )"]) elif e==3: i3 = calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) if i3==24.0: ans.append([cases[i][0]+' '+cases[i][1]+' ( ( '+cases[i][2]+' '+cases[i][3]+' '+cases[i][4]+' ) '+cases[i][5]+' '+cases[i][6]+" )"]) elif e==4: i3 = calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) if i3==24.0: ans.append([cases[i][0]+' '+cases[i][1]+' ( '+cases[i][2]+' '+cases[i][3]+' ( '+cases[i][4]+' '+cases[i][5]+' '+cases[i][6]+" ) )"]) if ans==[]: print('No solution') else: ans=str(ans[0]) print(ans[2:-2]+' = 24')
# 6330498321 (19.8) 324 (2021-02-18 14:47) #--------------------------------------------------------- nums = input('Enter 4 integers: ') num123=[str(e) for e in nums.split()] case1=[] case2=[] case3=[] case4=[] case5=[] cases = generate_all_combinations( num123, '+-*/' ) for j in cases: case1.append('( ('+' '+j[0]+' '+j[1]+' '+j[2]+' ) '+j[3]+' '+j[4]+' ) '+j[5]+' '+j[6]) case2.append('( '+j[0]+' '+j[1]+' ( '+j[2]+' '+j[3]+' '+j[4]+' ) ) '+j[5]+' '+j[6]) case3.append('( '+j[0]+' '+j[1]+' '+j[2]+' ) '+j[3]+' ( '+j[4]+' '+j[5]+' '+j[6]+' )') case4.append(j[0]+' '+j[1]+' '+'( ('+j[2]+' '+j[3]+' '+j[4]+')'+j[5]+' '+j[6]+' )') case5.append(j[0]+' '+j[1]+' ( '+j[2]+' '+j[3]+' ( '+j[4]+' '+j[5]+' '+j[6]+' ) )') allcase=case1+case2+case3+case4+case5 p=0 for k in allcase: try: eval(k) if eval(k)==24: print(k+' = 24') p+=1 break except: ZeroDivisionError if p==0: print('No Solutions')
# 6330499021 (11.8) 325 (2021-02-22 00:39) def calc(num1,operation,num2): num1=float(num1) num2=float(num2) if operation == '+': r=num1+num2 elif operation == '-': r=num1-num2 elif operation == '*': r=num1*num2 elif operation == '/': if num2==0: return 1000000 r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() cases = generate_all_combinations( nums, '+-*/' ) m=[] for i in range(len(cases)): a=calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) b=calc(calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][1],cases[i][0]),cases[i][5],cases[i][6]) c=calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) d=calc(calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6]),cases[i][1],cases[i][0]) e=calc(calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])),cases[i][1],cases[i][0]) if a==24: m.append(['(','(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],cases[i][4],')',cases[i][5],cases[i][6]]) if b==24: m.append(['(',cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],cases[i][4],')',')',cases[i][5],cases[i][6]]) if c==24: m.append(['(',cases[i][0], cases[i][1],cases[i][2],')',cases[i][3],'(', cases[i][4], cases[i][5],cases[i][6],')']) if d==24: m.append([cases[i][0],cases[i][1],'(','(',cases[i][2],cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],')']) if e==24: m.append([cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')' ')']) if len(m)==0: print('No Solutions') else: print(' '.join(m[0]),'=','24')
# 6330500921 (20) 326 (2021-02-22 14:21) def calc(num1,op,num2) : if op == '+' : r = float(num1)+float(num2) elif op == '-' : r= float(num1)-float(num2) elif op=='*' : r=float(num1)*float(num2) elif op =='/' : if float(num2)==0: r=math.inf else : r=float(num1)/float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a=nums.split() cases=generate_all_combinations( [a[0],a[1],a[2],a[3]], '+-*/' ) for b in cases : cal1= calc(calc(calc(b[0],b[1],b[2]),b[3],b[4]),b[5],b[6]) if cal1 ==24 : print('( ( '+b[0]+' '+b[1]+' '+b[2]+' ) '+b[3]+' '+b[4]+' ) '+b[5]+' '+b[6]+' '+'= 24') break cal2=calc(calc(b[0],b[1],calc(b[2],b[3],b[4])),b[5],b[6]) if cal2 ==24 : print('('+' '+b[0]+' '+b[1]+' ( '+b[2]+' '+b[3]+' '+b[4]+' ) ) '+b[5]+' '+b[6]+' '+'= 24') break cal3=calc(calc(b[0],b[1],b[2]),b[3],calc(b[4],b[5],b[6])) if cal3 ==24 : print('( '+b[0]+' '+b[1]+' '+b[2]+' ) '+b[3]+' ( '+b[4]+' '+b[5]+' '+b[6]+' ) '+'= 24') break cal4=calc(b[0],b[1],calc(calc(b[2],b[3],b[4]),b[5],b[6])) if cal4==24 : print(b[0]+' '+b[1]+' ( ( '+b[2]+' '+b[3]+' '+b[4]+' ) '+b[5]+' '+b[6]+' ) '+'= 24') break cal5=calc(b[0],b[1],calc(b[2],b[3],calc(b[4],b[5],b[6]))) if cal5==24 : print(b[0]+' '+b[1]+' ( '+b[2]+' '+b[3]+' ( '+b[4]+' '+b[5]+' '+b[6]+' ) ) '+'= 24') break else : print('No Solutions')
# 6330501521 (20) 327 (2021-02-19 15:00) def calc(num1, op, num2): if op == '+': r = (num1) + (num2) elif op == '-': r = (num1) - (num2) elif op == '*': r = (num1) * (num2) elif op == '/': if (num2)==0: r= math.inf else : r = (num1) / (num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') Num = [int(e) for e in nums.split()] cases = generate_all_combinations( Num , '+-*/' ) for i in range(len(cases)): z1=calc(calc( calc( cases[i][0], cases[i][1], cases[i][2] ), cases[i][3], cases[i][4] ), cases[i][5], cases[i][6]) if z1==24: print('(','(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],'=','24') break z2=calc(calc( cases[i][0], cases[i][1], calc( cases[i][2], cases[i][3], cases[i][4] ) ), cases[i][5], cases[i][6]) if z2==24: print('(',cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],cases[i][4],')',')',cases[i][5],cases[i][6],'=','24') break z3=calc(calc( cases[i][0], cases[i][1], cases[i][2] ), cases[i][3], calc( cases[i][4], cases[i][5], cases[i][6] )) if z3==24: print('(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')','=','24') break z4=calc(cases[i][0], cases[i][1], calc( calc( cases[i][2], cases[i][3], cases[i][4] ), cases[i][5], cases[i][6] )) if z4==24: print(cases[i][0],cases[i][1],'(','(',cases[i][2],cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],')','=','24') break z5=calc(cases[i][0], cases[i][1], calc( cases[i][2], cases[i][3], calc( cases[i][4], cases[i][5], cases[i][6] ) )) if z5==24: print(cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')',')','=','24') break if z1!=24 and z2!=24 and z3!=24 and z4!=24 and z5!=24: print('No Solutions')
# 6330502121 (20) 328 (2021-02-19 00:47) def calc(num1, operation, num2): if operation == '+': r = float(num1) + float(num2) elif operation == '-': r = float(num1) - float(num2) elif operation == '*': r = float(num1) * float(num2) elif operation == '/': if num2!=0: r = float(num1) / float(num2) elif num2==0 : r = 999999999 return r #--------------------------------------------------------- x=0 nums = input('Enter 4 integers: ') nums = nums.split(" ") nums=(int(nums[0]),int(nums[1]),int(nums[2]),int(nums[3])) cases = generate_all_combinations( nums, '+-*/' ) for i in cases: while x!=1: if calc(calc(calc(i[0], i[1], i[2]),i[3],i[4]),i[5],i[6])==24: print('(','(',str(i[0]),i[1],str(i[2]),')',i[3],str(i[4]),')',i[5],str(i[6]),'= 24') x+=1 elif calc(calc(i[0],i[1],calc(i[2], i[3], i[4])),i[5],i[6])==24: print('(',str(i[0]),i[1],'(',str(i[2]),i[3],str(i[4]),')',')',i[5],str(i[6]),'= 24') x+=1 elif calc(calc(i[0], i[1], i[2]),i[3],calc(i[4],i[5],i[6]))==24: print('(',str(i[0]),i[1],str(i[2]),')',i[3],'(',str(i[4]),i[5],str(i[6]),')','= 24') x+=1 elif calc(i[0], i[1], calc(calc(i[2],i[3],i[4]),i[5],i[6]))==24: print(str(i[0]),i[1],'(','(',str(i[2]),i[3],str(i[4]),')',i[5],str(i[6]),')','= 24') x+=1 elif calc(i[0], i[1], calc(i[2],i[3],calc(i[4],i[5],i[6])))==24: print(str(i[0]),i[1],'(',str(i[2]),i[3],'(',str(i[4]),i[5],str(i[6]),')',')','= 24') x+=1 else: break if x==0: print('No Solutions')
# 6330503821 (20) 329 (2021-02-19 15:05) def calculate(num1, op, num2): if op == "+": return num1+num2 elif op == "-": return num1-num2 elif op == "*": return num1*num2 elif op == "/": if num2 != 0: return num1/num2 return -9999999.5981561 else: print("invalid operation") return -1 def equal24(cases): for lst in cases: operands = lst[0::2] operators = lst[1::2] """ ( ( 1+ 2) +3) +4 ( 1+ ( 2+3) ) +4 ( 1+ 2) +( 3+4) 1+ ( ( 2+3) +4) 1+ ( 2+( 3+4) ) """ res1 = calculate(operands[0], operators[0], operands[1]) res1 = calculate(res1, operators[1], operands[2]) res1 = calculate(res1, operators[2], operands[3]) res2 = calculate(operands[1], operators[1], operands[2]) res2 = calculate(operands[0], operators[0], res2) res2 = calculate(res2, operators[2], operands[3]) res3 = calculate(calculate(operands[0], operators[0], operands[1]), operators[1], calculate( operands[2], operators[2], operands[3])) res4 = calculate(operands[1], operators[1], operands[2]) res4 = calculate(res4, operators[2], operands[3]) res4 = calculate(operands[0], operators[0], res4) res5 = calculate(operands[2], operators[2], operands[3]) res5 = calculate(operands[1], operators[1], res5) res5 = calculate(operands[0], operators[0], res5) if res1 == 24: print( f"( ( {operands[0]} {operators[0]} {operands[1]} ) {operators[1]} {operands[2]} ) {operators[2]} {operands[3]} = 24") break elif res2 == 24: print( f"( {operands[0]} {operators[0]} ( {operands[1]} {operators[1]} {operands[2]} ) ) {operators[2]} {operands[3]} = 24") break elif res3 == 24: print( f"( {operands[0]} {operators[0]} {operands[1]} ) {operators[1]} ( {operands[2]} {operators[2]} {operands[3]} ) = 24") break elif res4 == 24: print( f" {operands[0]} {operators[0]} ( ( {operands[1]} {operators[1]} {operands[2]} ) {operators[2]} {operands[3]} ) = 24") break elif res5 == 24: print( f"{operands[0]} {operators[0]} ( {operands[1]} {operators[1]} ( {operands[2]} {operators[2]} {operands[3]} ) ) = 24") break else: print("No Solutions") #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = list(map(int, nums.split())) if(len(nums) != 4): print("Please enter 4 integers!") exit(1) cases = generate_all_combinations(nums, "+-*/") equal24(cases)
# 6330504421 (20) 330 (2021-02-20 23:27) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == "-": r = num1 - num2 elif op == "*": r = num1 * num2 elif op == "/": if num2 == 0: r = 0 else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() nums1 = int(nums[0]) nums2 = int(nums[1]) nums3 = int(nums[2]) nums4 = int(nums[3]) cases = generate_all_combinations( [nums1,nums2,nums3,nums4], '+-*/' ) for e in cases: ans = calc(e[0], e[1], e[2]) ans = calc(ans, e[3], e[4]) ans = calc(ans, e[5], e[6]) if ans == 24: print('(','(',e[0],e[1],e[2],')',e[3],e[4],')',e[5],e[6],'=','24') break ans = calc(e[2], e[3], e[4]) ans = calc(e[0], e[1], ans) ans = calc(ans, e[5], e[6]) if ans == 24: print('(',e[0],e[1],'(',e[2],e[3],e[4],')',')',e[5],e[6],'=','24') break ans = calc(e[0], e[1], e[2]) z = calc(e[4], e[5], e[6]) ans = calc(ans, e[3], z) if ans == 24: print('(',e[0],e[1],e[2],')',e[3],'(',e[4],e[5],e[6],')','=','24') break ans = calc(e[2], e[3], e[4]) ans = calc(ans, e[5], e[6]) ans = calc(e[0], e[1], ans) if ans == 24: print(e[0],e[1],'(','(',e[2],e[3],e[4],')',e[5],e[6],')','=','24') break ans = calc(e[4], e[5], e[6]) ans = calc(e[2], e[3], ans) ans = calc(e[0], e[1], ans) if ans == 24: print(e[0],e[1],'(',e[2],e[3],'(',e[4],e[5],e[6],')',')','=','24') break if ans != 24: print('No Solutions')
# 6330505021 (20) 331 (2021-02-21 10:44) def calc(num1, op, num2): if op == "+": r = float(num1) + float(num2) elif op == "-": r = float(num1) - float(num2) elif op == "*": r = float(num1) * float(num2) elif op == "/": if num2 == 0: r = 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.54564869797897456489789748967489749/8748478974897987 else: r = float(num1) / float(num2) return r def eieiza(x): tumkakmakmak = 0 for i in range(len(x)): momo = x[i] for p in range(0,7,2): momo[p]= int(momo[p]) case1 = calc(calc(calc(momo[0],momo[1],momo[2]),momo[3],momo[4]),momo[5],momo[6]) case2 = calc(calc(momo[0],momo[1],calc(momo[2],momo[3],momo[4])),momo[5],momo[6]) case3 = calc(calc(momo[0],momo[1],momo[2]),momo[3],calc(momo[4],momo[5],momo[6])) case4 = calc(momo[0],momo[1],calc(calc(momo[2],momo[3],momo[4]),momo[5],momo[6])) case5 = calc(momo[0],momo[1],calc(momo[2],momo[3],calc(momo[4],momo[5],momo[6]))) if case1 == 24: tumkakmakmak = 1 k = f'( ( {momo[0]} {momo[1]} {momo[2]} ) {momo[3]} {momo[4]} ) {momo[5]} {momo[6]} = 24' return k elif case2 == 24: tumkakmakmak = 1 k = f'( {momo[0]} {momo[1]} ( {momo[2]} {momo[3]} {momo[4]} ) ) {momo[5]} {momo[6]} = 24' return k elif case3 == 24: tumkakmakmak = 1 k = f'( {momo[0]} {momo[1]} {momo[2]} ) {momo[3]} ( {momo[4]} {momo[5]} {momo[6]} ) = 24' return k elif case4 == 24: tumkakmakmak = 1 k = f'{momo[0]} {momo[1]} ( ( {momo[2]} {momo[3]} {momo[4]} ) {momo[5]} {momo[6]} ) = 24' return k elif case5 == 24: tumkakmakmak = 1 k = f'{momo[0]} {momo[1]} ( {momo[2]} {momo[3]} ( {momo[4]} {momo[5]} {momo[6]} ) ) = 24' return k if tumkakmakmak == 0: k = 'No Solutions' return k #--------------------------------------------------------- nums = input('Enter 4 integers: ') n = nums.split( ) cases = generate_all_combinations( n, '+-*/' ) shabu = eieiza(cases) print(shabu)
# 6330507321 (19.64) 332 (2021-02-18 23:08) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0: r = num1 / num2 else: r=math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') l=nums.split() cases = generate_all_combinations( l, '+-*/' ) j=0 for a in cases: if calc(calc(calc(int(a[0]),a[1],int(a[2])),a[3],int(a[4])),a[5],int(a[6]))==24: j+=1 print('('+' '+'(',a[0],a[1],a[2]+' '+')',a[3],a[4]+' '+')',a[5],a[6]+' '+'='+' '+'24') break elif calc(calc(int(a[0]),a[1],calc(int(a[2]),a[3],int(a[4]))),a[5],int(a[6]))==24: j+=1 print('(',a[0],a[1]+' '+'(',a[2],a[3],a[4]+' '+')'+' '+')',a[5],a[6]+' '+'='+' '+'24') break elif calc(calc(int(a[0]),a[1],int(a[2])),a[3],calc(int(a[4]),a[5],int(a[6])))==24: j+=1 print('(',a[0],a[1],a[2]+' '+')',a[3]+' '+'(',a[4],a[5],a[6]+' '+')'+' '+'='+' '+'24') break elif calc(int(a[0]),a[1],calc(calc(int(a[2]),a[3],int(a[4])),a[5],int(a[6])))==24: j+=1 print(a[0],a[1]+' '+'('+' '+'(',a[2],a[3],a[4]+' '+')',a[5],a[6]+' '+')'+' '+'='+' '+'24') break elif calc(int(a[0]),a[1],calc(int(a[2]),a[3],calc(int(a[4]),a[5],int(a[6]))))==24: j+=1 print(a[0],a[1]+' '+'(',a[2],a[3]+' '+'(',a[4],a[5],a[6]+' '+')'+' '+')'+' '+'='+' '+'24') break if j==0: print('No solution')
# 6330508021 (20) 333 (2021-02-20 17:26) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = math.pi else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.split(" ")] cases = generate_all_combinations(num_list, '+-*/' ) for i in cases: if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24: c = i m = 1 break elif calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) == 24: c = i m = 2 break elif calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) == 24: c = i m = 3 break elif calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) == 24: c = i m = 4 break elif calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) == 24: c = i m = 5 break elif i == cases[-1]: m = 6 c = [0]*10 H = "" for i in c: H += str(i)+ " " c = H[:-1].split(' ') A = ['(','(',c[0],c[1], c[2],')', c[3], c[4], ')',c[5],c[6]] B = ['(', c[0], c[1] ,'(', c[2], c[3], c[4], ')', ')', c[5], c[6]] C = ['(' ,c[0] ,c[1] ,c[2] ,')', c[3] ,'(' ,c[4] ,c[5] ,c[6] ,')'] D = [c[0], c[1], '(', '(', c[2], c[3], c[4] ,')' ,c[5], c[6] ,')'] E = [c[0], c[1] ,'(' ,c[2] ,c[3] ,'(' ,c[4] ,c[5] ,c[6] ,')' ,')'] if m == 1: print(" ".join(A), "=",'24') elif m == 2: print(" ".join(B), "=",'24') elif m == 3: print(" ".join(C), "=",'24') elif m == 4: print(" ".join(D), "=",'24') elif m == 5: print(" ".join(E), "=",'24') elif m == 6: print("No Solutions")
# 6330509621 (18) 334 (2021-02-21 15:46) def calc(n1,op,n2): if op == '+': r = n1+n2 elif op == '-': r = n1-n2 elif op == '*': r = n1*n2 elif op == '/' and n2 == 0: r = math.inf elif op == '/' and n2 == math.inf : r = math.inf elif op == '/': r = n1/n2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') n_l = nums.split() cases = generate_all_combinations( n_l, '+-*/' ) k = 0 while k < len(cases) : c = cases[k] n1 = int(c[0]) n2 = int(c[2]) n3 = int(c[4]) n4 = int(c[6]) op1 = c[1] op2 = c[3] op3 = c[5] #Calc o12 = calc(n1,op1,n2) o23 = calc(n2,op2,n3) o34 = calc(n3,op3,n4) ##1 o123 = calc(o12,op2,n3) o1234 = calc(o123,op3,n4) ##2 o231 = calc(n1,op1,o23) o2314 = calc(o231,op3,n4) ##3 o12_34 = calc(o12,op2,o34) ##4 o234 = calc(o23,op3,n4) o2341 = calc(n1,op1,o234) ##5 o342 = calc(n2,op2,o34) o3421 = calc(n1,op1,o342) if o1234 == 24: print('( ( '+c[0]+' '+c[1]+' '+c[2]+' ) '+c[3]+' '+c[4]+' ) '+c[5]+' ' +c[6]+' = 24' ) exit() elif o2314 == 24: print('( '+c[0]+' '+c[1]+' ( '+c[2]+' '+c[3]+' '+c[4]+' ) ) '+c[5]+' '+c[6]+' = 24') exit() elif o12_34 == 24: print('( '+c[0]+' '+c[1]+' '+c[2]+' ) '+' '+c[3]+' ( '+c[4]+' '+c[5]+' '+c[6]+' ) = 24') exit() elif o2341 == 24: print(c[0]+' '+c[1]+' ( ( '+c[2]+' '+c[3]+' '+c[4]+' ) '+c[5]+' '+c[6]+' ) = 24' ) exit() else: k+=1 print('No Solutions')
# 6330510121 (19.64) 335 (2021-02-21 22:02) def calc(num1,op,num2): if op=='+': result = float(num1)+float(num2) elif op=='-': result = float(num1)-float(num2) elif op=='*': result = float(num1)*float(num2) elif op=='/': if float(num2)==0: result = math.inf else: result = float(num1)/float(num2) return result #--------------------------------------------------------- nums = input('Enter 4 integers: ') c = nums.split() C = generate_all_combinations( [c[0],c[1],c[2],c[3]], '+-*/' ) for i in range(len(C)): n=C[i] T=False a= calc(calc(calc(n[0],n[1],n[2]),n[3],n[4]),n[5],n[6]) b= calc(calc(n[0],n[1],calc(n[2],n[3],n[4])),n[5],n[6]) c= calc(calc(n[0],n[1],n[2]),n[3],calc(n[4],n[5],n[6])) d= calc(n[0],n[1],calc(calc(n[2],n[3],n[4]),n[5],n[6])) e= calc(n[0],n[1],calc(n[2],n[3],calc(n[4],n[5],n[6]))) if a ==24: print('( '+'( '+n[0]+' '+n[1]+' '+n[2]+' '+') '+n[3]+' '+n[4]+' '+') '+n[5]+' '+n[6]+' '+'= '+'24') T=True break if b==24: print('( '+n[0]+' '+n[1]+' '+'( '+n[2]+' '+n[3]+' '+n[4]+' '+') '+') '+n[5]+' '+n[6]+' '+'= '+'24') T=True break if c==24: print('( '+n[0]+' '+n[1]+' '+n[2]+' '+') '+n[3]+' '+'( '+n[4]+' '+n[5]+' '+n[6]+' '+') '+'= '+'24') T=True break if d==24: print(n[0]+' '+n[1]+' '+'( '+'( '+n[2]+' '+n[3]+' '+n[4]+' '+') '+n[5]+' '+n[6]+' '+') '+'= '+'24') T=True break if e==24: print(n[0]+' '+n[1]+' '+'( '+n[2]+' '+n[3]+' '+'( '+n[4]+' '+n[5]+' '+n[6]+' '+') '+') '+'= '+'24') T=True break if T==False: print('No solution')
# 6330511821 (20) 336 (2021-02-20 17:21) def calc(num1, op, num2) : if op == '+' : r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*' : r = num1 * num2 elif op == '/' and num2 == 0: r = 99999999999999999999 elif op == '/' and num2 != 0: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() nums[0] = int(nums[0]) nums[1] = int(nums[1]) nums[2] = int(nums[2]) nums[3] = int(nums[3]) cases = generate_all_combinations( nums, '+-*/' ) for i in cases : answer = calc(i[0], i[1], i[2]) answer = calc(answer, i[3], i[4]) answer = calc(answer, i[5], i[6]) if answer == 24: print('( ( ' + str(i[0]) + ' '+str(i[1])+' ' + str(i[2]) + ' ) '+ str(i[3]) + ' '+str(i[4])+' ) '+str(i[5])+' '+str(i[6])+' = '+'24' ) break answer = calc(i[2], i[3], i[4]) answer = calc(i[0], i[1], answer) answer = calc(answer, i[5], i[6]) if answer == 24: print('( ' + str(i[0]) + ' '+str(i[1])+' ( ' +str(i[2]) +' '+ str(i[3]) + ' '+str(i[4])+' ) ) '+str(i[5])+' '+str(i[6])+' = '+'24' ) break answer1 = calc(i[0], i[1], i[2]) answer2 = calc(i[4], i[5], i[6]) answer = calc(answer1, i[3], answer2) if answer == 24: print('( ' + str(i[0]) + ' '+str(i[1])+' ' +str(i[2])+' )'+' '+ str(i[3]) + ' ( '+str(i[4])+' '+str(i[5])+' '+str(i[6])+' )'+' = '+'24' ) break answer = calc(i[2], i[3], i[4]) answer = calc(answer, i[5], i[6]) answer = calc(i[0], i[1], answer) if answer == 24: print("{0} {1} ( ( {2} {3} {4} ) {5} {6} ) = 24".format(i[0], i[1], i[2], i[3], i[4], i[5], i[6])) break answer = calc(i[4], i[5], i[6]) answer = calc(i[2], i[3], answer) answer = calc(i[0], i[1], answer) if answer == 24: print("{0} {1} ( {2} {3} ( {4} {5} {6} ) ) = 24".format(i[0], i[1], i[2], i[3], i[4], i[5], i[6])) break else: print('No Solutions')
# 6330512421 (20) 337 (2021-02-21 23:44) def calc(num1,op,num2) : if op == "+" : r = num1+num2 elif op == "-" : r = num1-num2 elif op == "*" : r = num1*num2 elif op == "/" : if num2 != 0 : r = num1/num2 else : r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() for k in range(0,len(num_list)) : num_list[k]=int(num_list[k]) c = generate_all_combinations(num_list ,'+-*/') x = 0 for i in range(0,len(c)) : if calc(calc(calc(c[i][0],c[i][1],c[i][2]),c[i][3],c[i][4]),c[i][5],c[i][6]) == 24 : print("(","(",c[i][0],c[i][1],c[i][2],")",c[i][3],c[i][4],")",c[i][5],c[i][6],"= 24") x+=1 break elif calc(calc(c[i][0],c[i][1],calc(c[i][2],c[i][3],c[i][4])),c[i][5],c[i][6]) == 24 : print("(",c[i][0],c[i][1],"(",c[i][2],c[i][3],c[i][4],")",")",c[i][5],c[i][6],"= 24") x+=1 break elif calc(calc(c[i][0],c[i][1],c[i][2]),c[i][3],calc(c[i][4],c[i][5],c[i][6])) == 24 : print("(",c[i][0],c[i][1],c[i][2],")",c[i][3],"(",c[i][4],c[i][5],c[i][6],")","= 24") x+=1 break elif calc(c[i][0],c[i][1],calc(calc(c[i][2],c[i][3],c[i][4]),c[i][5],c[i][6])) == 24 : print(c[i][0],c[i][1],"(","(",c[i][2],c[i][3],c[i][4],")",c[i][5],c[i][6],")","= 24") x+=1 break elif calc(c[i][0],c[i][1],calc(c[i][2],c[i][3],calc(c[i][4],c[i][5],c[i][6]))) == 24 : print(c[i][0],c[i][1],"(",c[i][2],c[i][3],"(",c[i][4],c[i][5],c[i][6],")",")","= 24 ") x+=1 break if x==0 : print("No Solutions") else : pass
# 6330513021 (17.4) 338 (2021-02-18 22:09) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2==0: r=math.inf else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') number = nums.split() c1 = generate_all_combinations( number, '+-*/' ) found = False for i in range(len(c1)): a0= calc(int(c1[i][0]),c1[i][1],int(c1[i][2])) a1= calc(a0,str(c1[i][3]),int(c1[i][4])) a2= calc(a1,str(c1[i][5]),int(c1[i][6])) if a2== 24 : found= True print('('+' '+'('+' '+c1[i][0]+' '+c1[i][1]+' '+c1[i][2]+' '+')'+' '+c1[i][3]+' '+c1[i][4]+' '+')'+\ ' '+c1[i][5]+' '+c1[i][6]+' '+'='+' '+'24') break else : b0= calc(int(c1[i][2]),str(c1[i][3]),int(c1[i][4])) b1= calc(int(c1[i][0]),str(c1[i][1]),b0) b2= calc(b1,str(c1[i][5]),int(c1[i][6])) if b2==24 : found= True print('('+c1[i][0]+' '+c1[i][1]+' '+'('+' '+c1[i][2]+' '+c1[i][3]+' '+c1[i][4]+' '+')'+' '+')'+' '+c1[i][5]+' '+c1[i][6]+\ ' '+'='+' '+'24') break else: d0= calc(int(c1[i][0]),str(c1[i][1]),int(c1[i][2])) d1= calc(int(c1[i][4]),str(c1[i][5]),int(c1[i][6])) d2= calc(d0,str(c1[i][3]),d1) if d2==24 : found= True print('('+' '+c1[i][0]+' '+c1[i][1]+' '+c1[i][2]+' '+')'+' '+c1[i][3]+' '+'('+' '+c1[i][4]+' '+c1[i][5]+' '+c1[i][6]+' '\ ')'+' '+'='+' '+'24') break else : e0= calc(int(c1[i][4]),str(c1[i][5]),int(c1[i][6])) e1= calc(int(c1[i][2]),str(c1[i][3]),e0) e2= calc(int(c1[i][0]),str(c1[i][1]),e1) if e2==24 : found= True print(c1[i][0]+' '+c1[i][1]+' '+'('+' '+c1[i][2]+' '+c1[i][3]+' '+'('+' '+c1[i][4]+' '+c1[i][5]+' '+\ c1[i][6]+')'+' '+')'+' '+'='+' '+'24') break else : f0= calc(int(c1[i][2]),str(c1[i][3]),int(c1[i][4])) f1= calc(f0,str(c1[i][3]),int(c1[i][6])) f2= calc(int(c1[i][0]),str(c1[i][1]),f1) if f2==24 : found= True print(c1[i][0]+' '+c1[i][1]+' '+'('+' '+'('+' '+c1[i][2]+' '+c1[i][3]+' '+c1[i][4]+' '+')'+' '+\ c1[i][5]+' '+c1[i][6]+' '+')'+' '+'='+' '+'24') break if not found : print('No Solutions')
# 6330514721 (20) 339 (2021-02-21 18:26) def calc(num1,op,num2): if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/': if (num2==0) : #add division by zero case r=0 else: r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x=[int(e) for e in nums.split()] cases = generate_all_combinations( x,'+-*/') for i in range (len(cases)): a=calc(calc((calc(cases[i][0],cases[i][1],cases[i][2])),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) b=calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) c=calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) d=calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) e=calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) if a==24: print("(","(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],"=","24") break if b==24: print("(",cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],cases[i][4],")",")",cases[i][5],cases[i][6],"=","24") break if c==24: print("(",cases[i][0],cases[i][1],cases[i][2],")",cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")","=","24") break if d==24: print(cases[i][0],cases[i][1],"(","(",cases[i][2],cases[i][3],cases[i][4],")",cases[i][5],cases[i][6],")","=","24") break if e==24: print(cases[i][0],cases[i][1],"(",cases[i][2],cases[i][3],"(",cases[i][4],cases[i][5],cases[i][6],")",")","=","24") break if a!=24 and b!=24 and c!=24 and d!=24 and e!=24: print("No Solutions")
# 6330515321 (19.2) 340 (2021-02-21 00:22) def calc(num1,op,num2) : if op == "+" : r = num1+num2 elif op == "-" : r = num1-num2 elif op == "*" : r = num1*num2 elif op == "/" : if num2 == 0 : r = math.inf else : r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations(nums,'+-*/') for i in range(len(cases)) : case = cases[i] num1 = int(case[0]) num2 = int(case[2]) num3 = int(case[4]) num4 = int(case[6]) op1 = case[1] op2 = case[3] op3 = case[5] ans1 = calc(calc(calc(num1,op1,num2),op2,num3),op3,num4) ans2 = calc(calc(num1,op1,calc(num2,op2,num3)),op3,num4) ans3 = calc(calc(num1,op1,num2),op2,calc(num3,op3,num4)) ans4 = calc(num1,op1,calc(calc(num2,op2,num3),op3,num4)) ans5 = calc(num1,op1,calc(num2,op2,calc(num3,op3,num4))) if ans1 == 24 : print("( (",num1,op1,num2,")",op2,num3,")",op3,num4,"=","24") break elif ans2 == 24 : print("(",num1,op1,"(",num2,op2,num3,"))",op3,num4,"=","24") break elif ans3 == 24 : print("(",num1,op1,num2,")",op2,"(",num3,op3,num4,")","=","24") break elif ans4 == 24 : print(num1,op1,"((",num2,op2,num3,")",op3,num4,")","=","24") break elif ans5 == 24 : print(num1,op1,"(",num2,op2,"(",num3,op3,num4,"))","=","24") break else: print("No Solutions")
# 6330516021 (19.6) 341 (2021-02-19 14:26) def calc(num1, op, num2): if op == '+' : r = num1 + num2 if op == '-' : r = num1 - num2 if op == '*' : r = num1 * num2 if op == '/' : if num2 == 0 : r = 1E100 else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = [int(e) for e in nums.split()] cases = generate_all_combinations( num, '+-*/' ) ans = [' ']*len(cases)*5 Found = False for i in range(len(cases)) : c = cases[i] ans[5*i] = calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) if ans[5*i] == 24 : print('( '+'( '+str(c[0])+' '+c[1]+' '+str(c[2])+' ) '+c[3]+' '+str(c[4])+' ) '+c[5]+' '+str(c[6])+' ='+' 24') Found = True break ans[5*i+1] = calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) if ans[5*i+1] == 24 : print('( '+str(c[0])+' '+c[1]+' ( '+str(c[2])+' '+c[3]+' '+str(c[4])+' ) '+') '+c[5]+' '+str(c[6])+' ='+' 24') Found = True break ans[5*i+2] = calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) if ans[5*i+2] == 24 : print(str(c[0])+' '+c[1]+' ( '+'( '+str(c[2])+' '+c[3]+' '+str(c[4])+' ) '+c[5]+' '+str(c[6])+' )'+' ='+' 24') Found = True break ans[5*i+3] = calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) if ans[5*i+3] == 24 : print(str(c[0])+' '+c[1]+' ( '+str(c[2])+' '+c[3]+' ( '+str(c[4])+' '+c[5]+' '+str(c[6])+') '+' )'+' ='+' 24') Found = True break ans[5*i+4] = calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])) if ans[5*i+4] == 24 : print('( '+str(c[0])+' '+c[1]+' '+str(c[2])+' ) '+c[3]+' ( '+str(c[4])+' '+c[5]+' '+str(c[6])+' )'+' ='+' 24') Found = True break if Found == True : pass else : print('No Solutions')
# 6330517621 (20) 342 (2021-02-18 15:12) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0 : num2 = 1 r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') numsp = nums.split() num1 = int(numsp[0]) num2 = int(numsp[1]) num3 = int(numsp[2]) num4 = int(numsp[3]) cases = generate_all_combinations( [num1,num2,num3,num4], '+-*/' ) pol1 = 0 pol2 = 0 pol3 = 0 pol4 = 0 pol5 = 0 found = False for i in cases : while pol1 != 24 or pol2 != 24 or pol3 != 24 or pol4 != 24 or pol5 != 24 : if pol1 != 24 : pol1 = calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) if pol2 != 24 : pol2 = calc((calc(i[0],i[1],(calc(i[2],i[3],i[4])))),i[5],i[6]) if pol3 != 24 : pol3 = calc((calc(i[0],i[1],i[2])),i[3],(calc(i[4],i[5],i[6]))) if pol4 != 24 : pol4 = calc(i[0],i[1],(calc(calc(i[2],i[3],i[4]),i[5],i[6]))) if pol5 != 24 : pol5 = calc(i[0],i[1],(calc(i[2],i[3],(calc(i[4],i[5],i[6]))))) break if pol1 == 24 : print('('+' '+'('+' '+str(i[0])+' '+i[1]+' '+str(i[2])+' '+')'+' '+i[3]+' '+str(i[4])+' '+')'+' '+i[5]+' '+str(i[6])+' '+'='+' '+str(int(pol1))) found = True break if pol2 == 24 : print('('+' '+str(i[0])+' '+i[1]+' '+'('+' '+str(i[2])+' '+' '+i[3]+' '+' '+str(i[4])+' '+')'+' '+')'+' '+i[5]+' '+str(i[6])+' '+'='+' '+str(int(pol2))) found = True break if pol3 == 24 : print('('+' '+str(i[0])+' '+i[1]+' '+str(i[2])+' '+')'+' '+i[3]+' '+'('+' '+str(i[4])+' '+i[5]+' '+str(i[6])+' '+')'+' '+'='+' '+str(int(pol3))) found = True break if pol4 == 24 : print(str(i[0])+' '+i[1]+' '+'('+' '+'('+' '+str(i[2])+' '+i[3]+' '+str(i[4])+' '+')'+' '+i[5]+' '+str(i[6])+' '+')'+' '+'='+' '+str(int(pol4))) found = True break if pol5 == 24 : print(str(i[0])+' '+i[1]+' '+'('+' '+str(i[2])+' '+i[3]+' '+'('+' '+str(i[4])+' '+i[5]+' '+str(i[6])+' '+')'+' '+')'+' '+'='+' '+str(int(pol5))) found = True break if found == False : print('No Solutions')
# 6330518221 (20) 343 (2021-02-19 23:42) def calc(num_1, operator, num_2): if operator == '+': result = num_1 + num_2 elif operator == '-': result = num_1 - num_2 elif operator == '*': result = num_1 * num_2 elif operator == '/': if num_2 == 0: result = math.inf elif num_2 == math.inf: result = math.inf else: result = num_1 / num_2 return result def calcase1 (Num1, o1, Num2, o2, Num3, o3, Num4): s = calc(calc(calc(Num1, o1, Num2), o2, Num3), o3, Num4) return s def calcase2 (Num1, o1, Num2, o2, Num3, o3, Num4): s = calc(calc(Num1, o1, calc(Num2, o2, Num3)), o3, Num4) return s def calcase3 (Num1, o1, Num2, o2, Num3, o3, Num4): s = calc(calc(Num1 , o1, Num2), o2, calc(Num3, o3, Num4)) return s def calcase4 (Num1, o1, Num2, o2, Num3, o3, Num4): s = calc(Num1, o1, calc(calc(Num2, o2, Num3), o3, Num4)) return s def calcase5 (Num1, o1, Num2, o2, Num3, o3, Num4): s = calc(Num1, o1, calc(Num2, o2, calc(Num3, o3, Num4))) return s #--------------------------------------------------------- nums = input('Enter 4 integers: ') numbers = [int(e) for e in nums.split()] cases = generate_all_combinations( numbers, '+-*/' ) for i in cases: if calcase1(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) == 24: print('( ( '+str(i[0])+' '+i[1]+' '+str(i[2])+' ) '+i[3]+' '+str(i[4])+' ) '+i[5]+' '+str(i[6])+' = 24') break elif calcase2(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) == 24: print('( '+str(i[0])+' '+i[1]+' ( '+str(i[2])+' '+i[3]+' '+str(i[4])+' ) ) '+i[5]+' '+str(i[6])+' = 24') break elif calcase3(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) == 24: print('( '+str(i[0])+' '+i[1]+' '+str(i[2])+' ) '+i[3]+' ( '+str(i[4])+' '+i[5]+' '+str(i[6])+' ) = 24') break elif calcase4(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) == 24: print(str(i[0])+' '+i[1]+' ( ( '+str(i[2])+' '+i[3]+' '+str(i[4])+' ) '+i[5]+' '+str(i[6])+' ) = 24') break elif calcase5(i[0],i[1],i[2],i[3],i[4],i[5],i[6]) == 24: print(str(i[0])+' '+i[1]+' ( '+str(i[2])+' '+i[3]+' ( '+str(i[4])+' '+i[5]+' '+str(i[6])+' ) ) = 24') break else: print('No Solutions')
# 6330520421 (19.64) 344 (2021-02-22 18:53) def calc(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op=='-': r = float(num1)-float(num2) elif op=='*': r = float(num1)*float(num2) elif op=='/': if num2==0: r=math.inf else: r = float(num1)/float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') a=nums.split() num_list=list(a) cases = generate_all_combinations( num_list, '+-*/' ) for i in range(len(cases)): c=cases[i] s1=calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) s2=calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) s3=calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])) s4=calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) s5=calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) cs=s1 if cs==24: ans='('+' '+'('+' '+c[0]+' '+c[1]+' '+c[2]+' '+')'+' '+c[3]+' '+c[4]+' '+')'+' '+c[5]+' '+c[6]+' '+'='+' '+'24' break else: cs=s2 if cs==24: ans='('+' '+c[0]+' '+c[1]+' '+'('+' '+c[2]+' '+c[3]+' '+c[4]+' '+')'+' '+')'+' '+c[5]+' '+c[6]+' '+'='+' '+'24' break else: cs=s3 if cs==24: ans='('+' '+c[0]+' '+c[1]+' '+c[2]+' '+')'+' '+c[3]+' '+'('+' '+c[4]+' '+c[5]+' '+c[6]+' '+')'+' '+'='+' '+'24' break else: cs=s4 if cs==24: ans=c[0]+' '+c[1]+' '+'('+' '+'('+' '+c[2]+' '+c[3]+' '+c[4]+' '+')'+' '+c[5]+' '+c[6]+' '+')'+' '+'='+' '+'24' break else: cs=s5 if cs==24: ans=c[0]+' '+c[1]+' '+'('+' '+c[2]+' '+c[3]+' '+'('+' '+c[4]+' '+c[5]+' '+c[6]+' '+')'+' '+')'+' '+'='+' '+'24' break else: ans='No solution' print(ans)
# 6330521021 (18) 345 (2021-02-19 17:54) def cp(a,b,c): if b=='+': ans = float(a) + float(c) if b=='-': ans = float(a) - float(c) if b=='*': ans = float(a) * float(c) if b=='/': if int(c)==0: ans = 0 else: ans = float(a) / float(c) return ans def canitbe24(ac): for i in range(len(ac)): if cp(cp(cp(ac[i][0],ac[i][1],ac[i][2]),ac[i][3],ac[i][4]),ac[i][5],ac[i][6])==24: print("( (",ac[i][0],ac[i][1],ac[i][2],")",ac[i][3],ac[i][4],")",ac[i][5],ac[i][6],"= 24") break if cp(cp(ac[i][0],ac[i][1],cp(ac[i][2],ac[i][3],ac[i][4])),ac[i][5],ac[i][6])==24: print("(",ac[i][0],ac[i][1],"(",ac[i][2],ac[i][3],ac[i][4],") )",ac[i][5],ac[i][6],"= 24") break if cp(cp(ac[i][0],ac[i][1],ac[i][2]),ac[i][3],cp(ac[i][4],ac[i][5],ac[i][6]))==24: print("(",ac[i][0],ac[i][1],ac[i][2],")",ac[i][3],"(",ac[i][4],ac[i][5],ac[i][6],") = 24") break if cp(ac[i][0],ac[i][1],cp(cp(ac[i][2],ac[i][3],ac[i][4]),ac[i][5],ac[i][6]))==24: print(ac[i][0],ac[i][1],"( (",ac[i][2],ac[i][3],ac[i][4],")",ac[i][5],ac[i][6],") = 24") break if cp(ac[i][0],ac[i][1],cp(ac[i][2],ac[i][3],cp(ac[i][4],ac[i][5],ac[i][6])))==24: print(ac[i][0],ac[i][1],"(",ac[i][2],ac[i][3],"(",ac[i][4],ac[i][5],ac[i][6],") ) = 24") break if i==len(ac)-1: print("No Solutions") break #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations(nums, '+-*/' ) canitbe24(cases)
# 6330522721 (7.8) 346 (2021-02-22 08:37) def calc(num1,operation,num2): if operation =='+': r = num1 + num2 elif operation =='-': r = num1 - num2 elif operation =='*': r = num1 * num2 elif operation =='/' and num2 == 0: r = 0 elif operation =='/' and num2 != 0: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') d = [int(e) for e in nums.split()] ... ... cases = generate_all_combinations( d , '+-*/' ) ... for cs in cases: for i in range(len(cases)): s24 = ['('] + ['('] + cases[i][0:1] + cases[i][1:2] + cases[i][2:3] + [')']+ cases[i][3:4] + cases[i][4:5] + [')'] + cases[i][5:6] + cases[i][6:7] op1 = calc( s24[2] ,s24[3] , s24[4] ) op2 = calc( op1 , s24[6] , s24[7] ) op3 = calc( op2 , s24[9] , s24[10] ) if op3 == 24 : break s24 = ['('] + cases[i][0:1] + cases[i][1:2] + ['('] + cases[i][2:3] + cases[i][3:4] + cases[i][4:5] + [')'] + [')'] + cases[i][5:6] + cases[i][6:7] op1 = calc( s24[4] ,s24[5] , s24[6] ) op2 = calc( s24[1] , s24[2] , op1 ) op3 = calc( op2 , s24[9] , s24[10] ) if op3 == 24 : break s24 = ['('] + cases[i][0:1] + cases[i][1:2] + cases[i][2:3] + [')'] + cases[i][3:4] + ['('] + cases[i][4:5] + cases[i][5:6] + cases[i][6:7] + [')'] op1 = calc( s24[1] ,s24[2] , s24[3] ) op2 = calc( s24[7] , s24[8] , s24[9] ) op3 = calc( op1 , s24[5] , op2 ) if op3 == 24 : break s24 = cases[i][0:1] + cases[i][1:2] + ['('] + ['('] + cases[i][2:3] + cases[i][3:4] + cases[i][4:5] + [')'] + cases[i][5:6] + cases[i][6:7] + [')'] op1 = calc( s24[4] ,s24[5] , s24[6] ) op2 = calc( op1 , s24[8] , s24[9] ) op3 = calc( s24[0] , s24[1] , op2 ) if op3 == 24 : break s24 = cases[i][0:1] + cases[i][1:2] + ['('] + cases[i][2:3] + cases[i][3:4] + ['('] + cases[i][4:5] + cases[i][5:6] + cases[i][6:7] + [')'] + [')'] op1 = calc( s24[6] ,s24[7] , s24[8] ) op2 = calc( s24[3] , s24[4] , op1 ) op3 = calc( s24[0] , s24[1] , op2 ) if op3 == 24 : break if op3 != 24: print('No Solutions') else : print(str(s24[0]) , str(s24[1]) , str(s24[2]),str(s24[3]) , str(s24[4]) , str(s24[5]),str(s24[6]) , str(s24[7]) , str(s24[8]),str(s24[9]) , str(s24[10]) ,'=',op3 )
# 6330523321 (18) 347 (2021-02-22 12:09) #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums_ = nums.split() n = 0 cases = generate_all_combinations( nums_, '+-*/' ) for i in range(1536): num1 = cases[i][0] num2 = cases[i][2] num3 = cases[i][4] num4 = cases[i][6] op1 = cases[i][1] op2 = cases[i][3] op3 = cases[i][5] a = "( ( "+num1+" "+op1+" "+num2+" ) "+op2+" "+num3+" ) "+op3+" "+num4+" =" b = "( "+num1+" "+op1+" ( "+num2+" "+op2+" "+num3+" ) ) "+op3+" "+num4+" =" c = "( "+num1+" "+op1+" "+num2+" ) "+op2+" ( "+num3+" "+op3+" "+num4+" ) =" d = num1+" "+op1+" ( ( "+num2+" "+op2+" "+num3+" ) "+op3+" "+num4+" ) =" e = num1+" "+op1+" ( "+num2+" "+op2+" ( "+num3+" "+op3+" "+num4+" ) ) =" if op1 == '+' and op2 == '+' and op3 == '+': r1 = ((int(num1) + int(num2)) + int(num3)) + int(num4) r2 = (int(num1) + (int(num2) + int(num3))) + int(num4) r3 = (int(num1) + int(num2)) + (int(num3) + int(num4)) r4 = int(num1) + ((int(num2) + int(num3)) + int(num4)) r5 = int(num1) + (int(num2) + (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '+' and op3 == '-': r1 = ((int(num1) + int(num2)) + int(num3)) - int(num4) r2 = (int(num1) + (int(num2) + int(num3))) - int(num4) r3 = (int(num1) + int(num2)) + (int(num3) - int(num4)) r4 = int(num1) + ((int(num2) + int(num3)) - int(num4)) r5 = int(num1) + (int(num2) + (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '+' and op3 == '*': r1 = ((int(num1) + int(num2)) + int(num3)) * int(num4) r2 = (int(num1) + (int(num2) + int(num3))) * int(num4) r3 = (int(num1) + int(num2)) + (int(num3) * int(num4)) r4 = int(num1) + ((int(num2) + int(num3)) * int(num4)) r5 = int(num1) + (int(num2) + (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '+' and op3 == '/': if(int(num4) != 0): r1 = ((int(num1) + int(num2)) + int(num3)) / int(num4) r2 = (int(num1) + (int(num2) + int(num3))) / int(num4) r3 = (int(num1) + int(num2)) + (int(num3) / int(num4)) r4 = int(num1) + ((int(num2) + int(num3)) / int(num4)) r5 = int(num1) + (int(num2) + (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '-' and op3 == '+': r1 = ((int(num1) + int(num2)) - int(num3)) + int(num4) r2 = (int(num1) + (int(num2) - int(num3))) + int(num4) r3 = (int(num1) + int(num2)) - (int(num3) + int(num4)) r4 = int(num1) + ((int(num2) - int(num3)) + int(num4)) r5 = int(num1) + (int(num2) - (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '-' and op3 == '-': r1 = ((int(num1) + int(num2)) - int(num3)) - int(num4) r2 = (int(num1) + (int(num2) - int(num3))) - int(num4) r3 = (int(num1) + int(num2)) - (int(num3) - int(num4)) r4 = int(num1) + ((int(num2) - int(num3)) - int(num4)) r5 = int(num1) + (int(num2) - (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '-' and op3 == '*': r1 = ((int(num1) + int(num2)) - int(num3)) * int(num4) r2 = (int(num1) + (int(num2) - int(num3))) * int(num4) r3 = (int(num1) + int(num2)) - (int(num3) * int(num4)) r4 = int(num1) + ((int(num2) - int(num3)) * int(num4)) r5 = int(num1) + (int(num2) - (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '-' and op3 == '/': if(int(num4) != 0): r1 = ((int(num1) + int(num2)) - int(num3)) / int(num4) r2 = (int(num1) + (int(num2) - int(num3))) / int(num4) r3 = (int(num1) + int(num2)) - (int(num3) / int(num4)) r4 = int(num1) + ((int(num2) - int(num3)) / int(num4)) r5 = int(num1) + (int(num2) - (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '*' and op3 == '+': r1 = ((int(num1) + int(num2)) * int(num3)) + int(num4) r2 = (int(num1) + (int(num2) * int(num3))) + int(num4) r3 = (int(num1) + int(num2)) * (int(num3) + int(num4)) r4 = int(num1) + ((int(num2) * int(num3)) + int(num4)) r5 = int(num1) + (int(num2) * (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '*' and op3 == '-': r1 = ((int(num1) + int(num2)) * int(num3)) - int(num4) r2 = (int(num1) + (int(num2) * int(num3))) - int(num4) r3 = (int(num1) + int(num2)) * (int(num3) - int(num4)) r4 = int(num1) + ((int(num2) * int(num3)) - int(num4)) r5 = int(num1) + (int(num2) * (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '*' and op3 == '*': r1 = ((int(num1) + int(num2)) * int(num3)) * int(num4) r2 = (int(num1) + (int(num2) * int(num3))) * int(num4) r3 = (int(num1) + int(num2)) * (int(num3) * int(num4)) r4 = int(num1) + ((int(num2) * int(num3)) * int(num4)) r5 = int(num1) + (int(num2) * (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '*' and op3 == '/': if(int(num4) != 0): r1 = ((int(num1) + int(num2)) * int(num3)) / int(num4) r2 = (int(num1) + (int(num2) * int(num3))) / int(num4) r3 = (int(num1) + int(num2)) * (int(num3) / int(num4)) r4 = int(num1) + ((int(num2) * int(num3)) / int(num4)) r5 = int(num1) + (int(num2) * (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '+' and op2 == '/' and op3 == '+': try: r1 = ((int(num1) + int(num2)) / int(num3)) + int(num4) r2 = (int(num1) + (int(num2) / int(num3))) + int(num4) r3 = (int(num1) + int(num2)) / (int(num3) + int(num4)) r4 = int(num1) + ((int(num2) / int(num3)) + int(num4)) r5 = int(num1) + (int(num2) / (int(num3) + int(num4))) if r1 == 24 : n+=1 print(a,24) break if r2 == 24 : n+=1 print(b,24) break if r3 == 24 : n+=1 print(c,24) break if r4 == 24 : n+=1 print(d,24) break if r5 == 24 : n+=1 print(e,24) break except ZeroDivisionError: n+=1 print ("No Solutions") break if op1 == '+' and op2 == '/' and op3 == '-': try: r1 = ((int(num1) + int(num2)) / int(num3)) - int(num4) r2 = (int(num1) + (int(num2) / int(num3))) - int(num4) r3 = (int(num1) + int(num2)) / (int(num3) - int(num4)) r4 = int(num1) + ((int(num2) / int(num3)) - int(num4)) r5 = int(num1) + (int(num2) / (int(num3) - int(num4))) if r1 == 24 : n+=1 print(a,24) break if r2 == 24 : n+=1 print(b,24) break if r3 == 24 : n+=1 print(c,24) break if r4 == 24 : n+=1 print(d,24) break if r5 == 24 : n+=1 print(e,24) break except ZeroDivisionError: n+=1 print ("No Solutions") break if op1 == '+' and op2 == '/' and op3 == '*': try: r1 = ((int(num1) + int(num2)) / int(num3)) * int(num4) r2 = (int(num1) + (int(num2) / int(num3))) * int(num4) r3 = (int(num1) + int(num2)) / (int(num3) * int(num4)) r4 = int(num1) + ((int(num2) / int(num3)) * int(num4)) r5 = int(num1) + (int(num2) / (int(num3) * int(num4))) if r1 == 24 : n+=1 print(a,24) break if r2 == 24 : n+=1 print(b,24) break if r3 == 24 : n+=1 print(c,24) break if r4 == 24 : n+=1 print(d,24) break if r5 == 24 : n+=1 print(e,24) break except ZeroDivisionError: n+=1 print ("No Solutions") break if op1 == '+' and op2 == '/' and op3 == '/': try: r1 = ((int(num1) + int(num2)) / int(num3)) / int(num4) r2 = (int(num1) + (int(num2) / int(num3))) / int(num4) r3 = (int(num1) + int(num2)) / (int(num3) / int(num4)) r4 = int(num1) + ((int(num2) / int(num3)) / int(num4)) r5 = int(num1) + (int(num2) / (int(num3) / int(num4))) if r1 == 24 : n+=1 print(a,24) break if r2 == 24 : n+=1 print(b,24) break if r3 == 24 : n+=1 print(c,24) break if r4 == 24 : n+=1 print(d,24) break if r5 == 24 : n+=1 print(e,24) break except ZeroDivisionError: n+=1 print ("No Solutions") break if op1 == '-' and op2 == '+' and op3 == '+': r1 = ((int(num1) - int(num2)) + int(num3)) + int(num4) r2 = (int(num1) - (int(num2) + int(num3))) + int(num4) r3 = (int(num1) - int(num2)) + (int(num3) + int(num4)) r4 = int(num1) - ((int(num2) + int(num3)) + int(num4)) r5 = int(num1) - (int(num2) + (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '+' and op3 == '-': r1 = ((int(num1) - int(num2)) + int(num3)) - int(num4) r2 = (int(num1) - (int(num2) + int(num3))) - int(num4) r3 = (int(num1) - int(num2)) + (int(num3) - int(num4)) r4 = int(num1) - ((int(num2) + int(num3)) - int(num4)) r5 = int(num1) - (int(num2) + (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '+' and op3 == '*': r1 = ((int(num1) - int(num2)) + int(num3)) * int(num4) r2 = (int(num1) - (int(num2) + int(num3))) * int(num4) r3 = (int(num1) - int(num2)) + (int(num3) * int(num4)) r4 = int(num1) - ((int(num2) + int(num3)) * int(num4)) r5 = int(num1) - (int(num2) + (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '+' and op3 == '/': if(int(num4) != 0): r1 = ((int(num1) - int(num2)) + int(num3)) / int(num4) r2 = (int(num1) - (int(num2) + int(num3))) / int(num4) r3 = (int(num1) - int(num2)) + (int(num3) / int(num4)) r4 = int(num1) - ((int(num2) + int(num3)) / int(num4)) r5 = int(num1) - (int(num2) + (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '-' and op3 == '+': r1 = ((int(num1) - int(num2)) - int(num3)) + int(num4) r2 = (int(num1) - (int(num2) - int(num3))) + int(num4) r3 = (int(num1) - int(num2)) - (int(num3) + int(num4)) r4 = int(num1) - ((int(num2) - int(num3)) + int(num4)) r5 = int(num1) - (int(num2) - (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '-' and op3 == '-': r1 = ((int(num1) - int(num2)) - int(num3)) - int(num4) r2 = (int(num1) - (int(num2) - int(num3))) - int(num4) r3 = (int(num1) - int(num2)) - (int(num3) - int(num4)) r4 = int(num1) - ((int(num2) - int(num3)) - int(num4)) r5 = int(num1) - (int(num2) - (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '-' and op3 == '*': r1 = ((int(num1) - int(num2)) - int(num3)) * int(num4) r2 = (int(num1) - (int(num2) - int(num3))) * int(num4) r3 = (int(num1) - int(num2)) - (int(num3) * int(num4)) r4 = int(num1) - ((int(num2) - int(num3)) * int(num4)) r5 = int(num1) - (int(num2) - (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '-' and op3 == '/': if(int(num4) != 0): r1 = ((int(num1) - int(num2)) - int(num3)) / int(num4) r2 = (int(num1) - (int(num2) - int(num3))) / int(num4) r3 = (int(num1) - int(num2)) - (int(num3) / int(num4)) r4 = int(num1) - ((int(num2) - int(num3)) / int(num4)) r5 = int(num1) - (int(num2) - (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '*' and op3 == '+': r1 = ((int(num1) - int(num2)) * int(num3)) + int(num4) r2 = (int(num1) - (int(num2) * int(num3))) + int(num4) r3 = (int(num1) - int(num2)) * (int(num3) + int(num4)) r4 = int(num1) - ((int(num2) * int(num3)) + int(num4)) r5 = int(num1) - (int(num2) * (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '*' and op3 == '-': r1 = ((int(num1) - int(num2)) * int(num3)) - int(num4) r2 = (int(num1) - (int(num2) * int(num3))) - int(num4) r3 = (int(num1) - int(num2)) * (int(num3) - int(num4)) r4 = int(num1) - ((int(num2) * int(num3)) - int(num4)) r5 = int(num1) - (int(num2) * (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '*' and op3 == '*': r1 = ((int(num1) - int(num2)) * int(num3)) * int(num4) r2 = (int(num1) - (int(num2) * int(num3))) * int(num4) r3 = (int(num1) - int(num2)) * (int(num3) * int(num4)) r4 = int(num1) - ((int(num2) * int(num3)) * int(num4)) r5 = int(num1) - (int(num2) * (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '*' and op3 == '/': if(int(num4) != 0): r1 = ((int(num1) - int(num2)) * int(num3)) / int(num4) r2 = (int(num1) - (int(num2) * int(num3))) / int(num4) r3 = (int(num1) - int(num2)) * (int(num3) / int(num4)) r4 = int(num1) - ((int(num2) * int(num3)) / int(num4)) r5 = int(num1) - (int(num2) * (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '-' and op2 == '/' and op3 == '+': try: r1 = ((int(num1) - int(num2)) / int(num3)) + int(num4) r2 = (int(num1) - (int(num2) / int(num3))) + int(num4) r3 = (int(num1) - int(num2)) / (int(num3) + int(num4)) r4 = int(num1) - ((int(num2) / int(num3)) + int(num4)) r5 = int(num1) - (int(num2) / (int(num3) + int(num4))) if r1 == 24 : n+=1 print(a,24) break if r2 == 24 : n+=1 print(b,24) break if r3 == 24 : n+=1 print(c,24) break if r4 == 24 : n+=1 print(d,24) break if r5 == 24 : n+=1 print(e,24) break except ZeroDivisionError: n+=1 print ("No Solutions") break if op1 == '-' and op2 == '/' and op3 == '-': try: r1 = ((int(num1) - int(num2)) / int(num3)) - int(num4) r2 = (int(num1) - (int(num2) / int(num3))) - int(num4) r3 = (int(num1) - int(num2)) / (int(num3) - int(num4)) r4 = int(num1) - ((int(num2) / int(num3)) - int(num4)) r5 = int(num1) - (int(num2) / (int(num3) - int(num4))) if r1 == 24 : n+=1 print(a,24) break if r2 == 24 : n+=1 print(b,24) break if r3 == 24 : n+=1 print(c,24) break if r4 == 24 : n+=1 print(d,24) break if r5 == 24 : n+=1 print(e,24) break except ZeroDivisionError: n+=1 print ("No Solutions") break if op1 == '-' and op2 == '/' and op3 == '*': try: r1 = ((int(num1) - int(num2)) / int(num3)) * int(num4) r2 = (int(num1) - (int(num2) / int(num3))) * int(num4) r3 = (int(num1) - int(num2)) / (int(num3) * int(num4)) r4 = int(num1) - ((int(num2) / int(num3)) * int(num4)) r5 = int(num1) - (int(num2) / (int(num3) * int(num4))) if r1 == 24 : n+=1 print(a,24) break if r2 == 24 : n+=1 print(b,24) break if r3 == 24 : n+=1 print(c,24) break if r4 == 24 : n+=1 print(d,24) break if r5 == 24 : n+=1 print(e,24) break except ZeroDivisionError: n+=1 print ("No Solutions") break if op1 == '-' and op2 == '/' and op3 == '/': try: r1 = ((int(num1) - int(num2)) / int(num3)) / int(num4) r2 = (int(num1) - (int(num2) / int(num3))) / int(num4) r3 = (int(num1) - int(num2)) / (int(num3) / int(num4)) r4 = int(num1) - ((int(num2) / int(num3)) / int(num4)) r5 = int(num1) - (int(num2) / (int(num3) / int(num4))) if r1 == 24 : n+=1 print(a,24) break if r2 == 24 : n+=1 print(b,24) break if r3 == 24 : n+=1 print(c,24) break if r4 == 24 : n+=1 print(d,24) break if r5 == 24 : n+=1 print(e,24) break except ZeroDivisionError: n+=1 print ("No Solutions") break if op1 == '*' and op2 == '+' and op3 == '+': r1 = ((int(num1) * int(num2)) + int(num3)) + int(num4) r2 = (int(num1) * (int(num2) + int(num3))) + int(num4) r3 = (int(num1) * int(num2)) + (int(num3) + int(num4)) r4 = int(num1) * ((int(num2) + int(num3)) + int(num4)) r5 = int(num1) * (int(num2) + (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '+' and op3 == '-': r1 = ((int(num1) * int(num2)) + int(num3)) - int(num4) r2 = (int(num1) * (int(num2) + int(num3))) - int(num4) r3 = (int(num1) * int(num2)) + (int(num3) - int(num4)) r4 = int(num1) * ((int(num2) + int(num3)) - int(num4)) r5 = int(num1) * (int(num2) + (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '+' and op3 == '*': r1 = ((int(num1) * int(num2)) + int(num3)) * int(num4) r2 = (int(num1) * (int(num2) + int(num3))) * int(num4) r3 = (int(num1) * int(num2)) + (int(num3) * int(num4)) r4 = int(num1) * ((int(num2) + int(num3)) * int(num4)) r5 = int(num1) * (int(num2) + (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '+' and op3 == '/': if(int(num4) != 0): r1 = ((int(num1) * int(num2)) + int(num3)) / int(num4) r2 = (int(num1) * (int(num2) + int(num3))) / int(num4) r3 = (int(num1) * int(num2)) + (int(num3) / int(num4)) r4 = int(num1) * ((int(num2) + int(num3)) / int(num4)) r5 = int(num1) * (int(num2) + (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '-' and op3 == '+': r1 = ((int(num1) * int(num2)) - int(num3)) + int(num4) r2 = (int(num1) * (int(num2) - int(num3))) + int(num4) r3 = (int(num1) * int(num2)) - (int(num3) + int(num4)) r4 = int(num1) * ((int(num2) - int(num3)) + int(num4)) r5 = int(num1) * (int(num2) - (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '-' and op3 == '-': r1 = ((int(num1) * int(num2)) - int(num3)) - int(num4) r2 = (int(num1) * (int(num2) - int(num3))) - int(num4) r3 = (int(num1) * int(num2)) - (int(num3) - int(num4)) r4 = int(num1) * ((int(num2) - int(num3)) - int(num4)) r5 = int(num1) * (int(num2) - (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '-' and op3 == '*': r1 = ((int(num1) * int(num2)) - int(num3)) * int(num4) r2 = (int(num1) * (int(num2) - int(num3))) * int(num4) r3 = (int(num1) * int(num2)) - (int(num3) * int(num4)) r4 = int(num1) * ((int(num2) - int(num3)) * int(num4)) r5 = int(num1) * (int(num2) - (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '-' and op3 == '/': if(int(num4) != 0): r1 = ((int(num1) * int(num2)) - int(num3)) / int(num4) r2 = (int(num1) * (int(num2) - int(num3))) / int(num4) r3 = (int(num1) * int(num2)) - (int(num3) / int(num4)) r4 = int(num1) * ((int(num2) - int(num3)) / int(num4)) r5 = int(num1) * (int(num2) - (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '*' and op3 == '+': r1 = ((int(num1) * int(num2)) * int(num3)) + int(num4) r2 = (int(num1) * (int(num2) * int(num3))) + int(num4) r3 = (int(num1) * int(num2)) * (int(num3) + int(num4)) r4 = int(num1) * ((int(num2) * int(num3)) + int(num4)) r5 = int(num1) * (int(num2) * (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '*' and op3 == '-': r1 = ((int(num1) * int(num2)) * int(num3)) - int(num4) r2 = (int(num1) * (int(num2) * int(num3))) - int(num4) r3 = (int(num1) * int(num2)) * (int(num3) - int(num4)) r4 = int(num1) * ((int(num2) * int(num3)) - int(num4)) r5 = int(num1) * (int(num2) * (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '*' and op3 == '*': r1 = ((int(num1) * int(num2)) * int(num3)) * int(num4) r2 = (int(num1) * (int(num2) * int(num3))) * int(num4) r3 = (int(num1) * int(num2)) * (int(num3) * int(num4)) r4 = int(num1) * ((int(num2) * int(num3)) * int(num4)) r5 = int(num1) * (int(num2) * (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '*' and op3 == '/': if(int(num4) != 0): r1 = ((int(num1) * int(num2)) * int(num3)) / int(num4) r2 = (int(num1) * (int(num2) * int(num3))) / int(num4) r3 = (int(num1) * int(num2)) * (int(num3) / int(num4)) r4 = int(num1) * ((int(num2) * int(num3)) / int(num4)) r5 = int(num1) * (int(num2) * (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break if op1 == '*' and op2 == '/' and op3 == '+': try: r1 = ((int(num1) * int(num2)) / int(num3)) + int(num4) r2 = (int(num1) * (int(num2) / int(num3))) + int(num4) r3 = (int(num1) * int(num2)) / (int(num3) + int(num4)) r4 = int(num1) * ((int(num2) / int(num3)) + int(num4)) r5 = int(num1) * (int(num2) / (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '*' and op2 == '/' and op3 == '-': try: r1 = ((int(num1) * int(num2)) / int(num3)) - int(num4) r2 = (int(num1) * (int(num2) / int(num3))) - int(num4) r3 = (int(num1) * int(num2)) / (int(num3) - int(num4)) r4 = int(num1) * ((int(num2) / int(num3)) - int(num4)) r5 = int(num1) * (int(num2) / (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '*' and op2 == '/' and op3 == '*': try: r1 = ((int(num1) * int(num2)) / int(num3)) * int(num4) r2 = (int(num1) * (int(num2) / int(num3))) * int(num4) r3 = (int(num1) * int(num2)) / (int(num3) * int(num4)) r4 = int(num1) * ((int(num2) / int(num3)) * int(num4)) r5 = int(num1) * (int(num2) / (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '*' and op2 == '/' and op3 == '/': try: r1 = ((int(num1) * int(num2)) / int(num3)) / int(num4) r2 = (int(num1) * (int(num2) / int(num3))) / int(num4) r3 = (int(num1) * int(num2)) / (int(num3) / int(num4)) r4 = int(num1) * ((int(num2) / int(num3)) / int(num4)) r5 = int(num1) * (int(num2) / (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '+' and op3 == '+': try: r1 = ((int(num1) / int(num2)) + int(num3)) + int(num4) r2 = (int(num1) / (int(num2) + int(num3))) + int(num4) r3 = (int(num1) / int(num2)) + (int(num3) + int(num4)) r4 = int(num1) / ((int(num2) + int(num3)) + int(num4)) r5 = int(num1) / (int(num2) + (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '+' and op3 == '-': try: r1 = ((int(num1) / int(num2)) + int(num3)) - int(num4) r2 = (int(num1) / (int(num2) + int(num3))) - int(num4) r3 = (int(num1) / int(num2)) + (int(num3) - int(num4)) r4 = int(num1) / ((int(num2) + int(num3)) - int(num4)) r5 = int(num1) / (int(num2) + (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '+' and op3 == '*': try: r1 = ((int(num1) / int(num2)) + int(num3)) * int(num4) r2 = (int(num1) / (int(num2) + int(num3))) * int(num4) r3 = (int(num1) / int(num2)) + (int(num3) * int(num4)) r4 = int(num1) / ((int(num2) + int(num3)) * int(num4)) r5 = int(num1) / (int(num2) + (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '+' and op3 == '/': try: r1 = ((int(num1) / int(num2)) + int(num3)) / int(num4) r2 = (int(num1) / (int(num2) + int(num3))) / int(num4) r3 = (int(num1) / int(num2)) + (int(num3) / int(num4)) r4 = int(num1) / ((int(num2) + int(num3)) / int(num4)) r5 = int(num1) / (int(num2) + (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '-' and op3 == '+': try: r1 = ((int(num1) / int(num2)) - int(num3)) + int(num4) r2 = (int(num1) / (int(num2) - int(num3))) + int(num4) r3 = (int(num1) / int(num2)) - (int(num3) + int(num4)) r4 = int(num1) / ((int(num2) - int(num3)) + int(num4)) r5 = int(num1) / (int(num2) - (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '-' and op3 == '-': try: r1 = ((int(num1) / int(num2)) - int(num3)) - int(num4) r2 = (int(num1) / (int(num2) - int(num3))) - int(num4) r3 = (int(num1) / int(num2)) - (int(num3) - int(num4)) r4 = int(num1) / ((int(num2) - int(num3)) - int(num4)) r5 = int(num1) / (int(num2) - (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '-' and op3 == '*': try: r1 = ((int(num1) / int(num2)) - int(num3)) * int(num4) r2 = (int(num1) / (int(num2) - int(num3))) * int(num4) r3 = (int(num1) / int(num2)) - (int(num3) * int(num4)) r4 = int(num1) / ((int(num2) - int(num3)) * int(num4)) r5 = int(num1) / (int(num2) - (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '-' and op3 == '/': try: r1 = ((int(num1) / int(num2)) - int(num3)) / int(num4) r2 = (int(num1) / (int(num2) - int(num3))) / int(num4) r3 = (int(num1) / int(num2)) - (int(num3) / int(num4)) r4 = int(num1) / ((int(num2) - int(num3)) / int(num4)) r5 = int(num1) / (int(num2) - (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '*' and op3 == '+': try: r1 = ((int(num1) / int(num2)) * int(num3)) + int(num4) r2 = (int(num1) / (int(num2) * int(num3))) + int(num4) r3 = (int(num1) / int(num2)) * (int(num3) + int(num4)) r4 = int(num1) / ((int(num2) * int(num3)) + int(num4)) r5 = int(num1) / (int(num2) * (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '*' and op3 == '-': try: r1 = ((int(num1) / int(num2)) * int(num3)) - int(num4) r2 = (int(num1) / (int(num2) * int(num3))) - int(num4) r3 = (int(num1) / int(num2)) * (int(num3) - int(num4)) r4 = int(num1) / ((int(num2) * int(num3)) - int(num4)) r5 = int(num1) / (int(num2) * (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '*' and op3 == '*': try: r1 = ((int(num1) / int(num2)) * int(num3)) * int(num4) r2 = (int(num1) / (int(num2) * int(num3))) * int(num4) r3 = (int(num1) / int(num2)) * (int(num3) * int(num4)) r4 = int(num1) / ((int(num2) * int(num3)) * int(num4)) r5 = int(num1) / (int(num2) * (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '*' and op3 == '/': try: r1 = ((int(num1) / int(num2)) * int(num3)) / int(num4) r2 = (int(num1) / (int(num2) * int(num3))) / int(num4) r3 = (int(num1) / int(num2)) * (int(num3) / int(num4)) r4 = int(num1) / ((int(num2) * int(num3)) / int(num4)) r5 = int(num1) / (int(num2) * (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '/' and op3 == '+': try: r1 = ((int(num1) / int(num2)) / int(num3)) + int(num4) r2 = (int(num1) / (int(num2) / int(num3))) + int(num4) r3 = (int(num1) / int(num2)) / (int(num3) + int(num4)) r4 = int(num1) / ((int(num2) / int(num3)) + int(num4)) r5 = int(num1) / (int(num2) / (int(num3) + int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '/' and op3 == '-': try: r1 = ((int(num1) / int(num2)) / int(num3)) - int(num4) r2 = (int(num1) / (int(num2) / int(num3))) - int(num4) r3 = (int(num1) / int(num2)) / (int(num3) - int(num4)) r4 = int(num1) / ((int(num2) / int(num3)) - int(num4)) r5 = int(num1) / (int(num2) / (int(num3) - int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '/' and op3 == '*': try: r1 = ((int(num1) / int(num2)) / int(num3)) * int(num4) r2 = (int(num1) / (int(num2) / int(num3))) * int(num4) r3 = (int(num1) / int(num2)) / (int(num3) * int(num4)) r4 = int(num1) / ((int(num2) / int(num3)) * int(num4)) r5 = int(num1) / (int(num2) / (int(num3) * int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if op1 == '/' and op2 == '/' and op3 == '/': try: r1 = ((int(num1) / int(num2)) / int(num3)) / int(num4) r2 = (int(num1) / (int(num2) / int(num3))) / int(num4) r3 = (int(num1) / int(num2)) / (int(num3) / int(num4)) r4 = int(num1) / ((int(num2) / int(num3)) / int(num4)) r5 = int(num1) / (int(num2) / (int(num3) / int(num4))) if r1 == 24 : n +=1 print(a,24) break if r2 == 24 : n +=1 print(b,24) break if r3 == 24 : n +=1 print(c,24) break if r4 == 24 : n +=1 print(d,24) break if r5 == 24 : n +=1 print(e,24) break except ZeroDivisionError: n +=1 print ("No Solutions") break if(n==0): print("No Solutions")
# 6330524021 (20) 348 (2021-02-20 11:00) #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) for i in range(len(cases)): cases[i][::2] = [int(e) for e in cases[i][::2]] pattern = 0 check = False for i in cases: for n in range(1): #((1+2)+3)+4 if i[1] == '+': r = i[0]+i[2] if i[1] == '-': r = i[0]-i[2] if i[1] == '*': r = i[0]*i[2] if i[1] == '/': if i[2] != 0: r = i[0]/i[2] else: check = True if check: continue if i[3] == '+': r = r+i[4] if i[3] == '-': r = r-i[4] if i[3] == '*': r = r*i[4] if i[3] == '/': if i[4] != 0: r = r/i[4] else: check = True if check: continue if i[5] == '+': r = r+i[6] if i[5] == '-': r = r-i[6] if i[5] == '*': r = r*i[6] if i[5] == '/': if i[6] != 0: r = r/i[6] else: check = True if (not check) and abs(r-24)<=1e-10*max(r,24): pattern = 1 ; break #----------------------------------------------------------- check = False for n in range(1): if i[3] == '+': r = i[2]+i[4] #(1+(2+3))+4 if i[3] == '-': r = i[2]-i[4] if i[3] == '*': r = i[2]*i[4] if i[3] == '/': if i[4] != 0: r = i[2]/i[4] else: check = True if check: continue if i[1] == '+': r = i[0]+r if i[1] == '-': r = i[0]-r if i[1] == '*': r = i[0]*r if i[1] == '/': if r != 0: r = i[0]/r else: check = True if check: continue if i[5] == '+': r = r+i[6] if i[5] == '-': r = r-i[6] if i[5] == '*': r = r*i[6] if i[5] == '/': if i[6] != 0: r = r/i[6] else: check = True if (not check) and abs(r-24)<=1e-10*max(r,24): pattern = 2 ; break #------------------------------------------------------------- check = False for n in range(1): #(1+2)+(3+4) if i[1] == '+': r1 = i[0]+i[2] if i[1] == '-': r1 = i[0]-i[2] if i[1] == '*': r1 = i[0]*i[2] if i[1] == '/': if i[2] != 0: r = i[0]/i[2] else: check = True if check: continue if i[5] == '+': r2 = i[4]+i[6] if i[5] == '-': r2 = i[4]-i[6] if i[5] == '*': r2 = i[4]*i[6] if i[5] == '/': if i[6] != 0: r = i[4]/i[6] else: check = True if check: continue if i[3] == '+': r = r1+r2 if i[3] == '-': r = r1-r2 if i[3] == '*': r = r1*r2 if i[3] == '/': if r2 != 0: r = r1/r2 else: check = True if (not check) and abs(r-24)<=1e-10*max(r,24): pattern = 3 ; break #------------------------------------------------------------- check = False for n in range(1): #1+((2+3)+4) if i[3] == '+': r = i[2]+i[4] if i[3] == '-': r = i[2]-i[4] if i[3] == '*': r = i[2]*i[4] if i[3] == '/': if i[4] != 0: r = i[2]/i[4] else: check = True if check: continue if i[5] == '+': r = r+i[6] if i[5] == '-': r = r-i[6] if i[5] == '*': r = r*i[6] if i[5] == '/': if i[6] != 0: r = r/i[6] else: check = True if check: continue if i[1] == '+': r = i[0]+r if i[1] == '-': r = i[0]-r if i[1] == '*': r = i[0]*r if i[1] == '/': if r != 0: r = i[0]/r else: check = True if (not check) and abs(r-24)<=1e-10*max(r,24): pattern = 4 ; break #------------------------------------------------------------- check = False for n in range(1): #1+(2+(3+4)) if i[5] == '+': r = i[4]+i[6] if i[5] == '-': r = i[4]-i[6] if i[5] == '*': r = i[4]*i[6] if i[5] == '/': if i[6] != 0: r = i[4]/i[6] else: check = True if check: continue if i[3] == '+': r = i[2]+r if i[3] == '-': r = i[2]-r if i[3] == '*': r = i[2]*r if i[3] == '/': if r != 0: r = i[2]/r else: check = True if check: continue if i[1] == '+': r = i[0]+r if i[1] == '-': r = i[0]-r if i[1] == '*': r = i[0]*r if i[1] == '/': if r != 0: r = i[0]/r else: check = True if (not check) and abs(r-24)<=1e-10*max(r,24): pattern = 5 ; break if pattern != 0: i = [str(e) for e in i] if pattern == 1: print('(','(',' '.join(i[:3]),')',' '.join(i[3:5]),')',' '.join(i[5:]),'= 24') if pattern == 2: print('(',' '.join(i[:2]),'(',' '.join(i[2:5]),')',')',' '.join(i[5:]),'= 24') if pattern == 3: print('(',' '.join(i[:3]),')',i[3],'(',' '.join(i[4:]),')','= 24') if pattern == 4: print(' '.join(i[:2]),'(','(',' '.join(i[2:5]),')',' '.join(i[5:]),')','= 24') if pattern == 5: print(' '.join(i[:2]),'(',' '.join(i[2:4]),'(',' '.join(i[4:]),')',')','= 24') else: print('No Solutions')
# 6330525621 (18) 349 (2021-02-21 20:49) def calc(num1,op,num2): if num1 != 'error' and num2 != 'error': if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if int(num2) != 0: r = float(num1) / float(num2) else: r = 'error' else: r = 'error' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = nums.split() cases = generate_all_combinations( num, '+-*/' ) i = 0 for i in range(len(cases)): a = cases[i] s = 0 if (calc(calc(calc(a[0],a[1],a[2]),a[3],a[4]),a[5],a[6])) == 24: print('( ( ' + a[0] + ' ' + a[1] + ' ' + a[2] + ' ) ' + a[3] + ' ' + a[4] + ' ) ' + a[5] + ' ' + a[6] + ' = 24') s = 24 break elif (calc(calc(a[0],a[1],calc(a[2],a[3],a[4])),a[5],a[6])) == 24: print('( ' + a[0] + ' ' + a[1] + ' ( '+ a[2] + ' ' + a[3] + ' ' + a[4] + ' ) ) ' + a[5] + ' ' + a[6] + ' = 24') s = 24 break elif (calc(calc(a[0],a[1],a[2]),a[3],calc(a[4],a[5],a[6]))) == 24: print('( ' + a[0] + ' ' + a[1] + ' ' + a[2] + ' ) ' + a[3] + ' ( ' + a[4] + ' ' + a[5] + ' ' + a[6] + ' ) = 24') s = 24 break elif (calc(a[0],a[1],calc(calc(a[2],a[3],a[4]),a[5],a[6]))) == 24: print(a[0] + ' ' + a[1] + ' ( ( ' + a[2] + ' ' + a[3] +' ' + a[4] + ' ) ' + a[5] + ' ' + a[6] + ' ) = 24') s = 24 break elif (calc(a[0],a[1],calc(a[2],a[3],calc(a[4],a[5],a[6])))) == 24: print(a[0] + ' ' + a[1] + ' ( ' + a[2] + ' ' + a[3] + ' ( ' + a[4] + ' ' + a[5] + ' ' + a[6] + ' ) ) = 24') s = 24 break if s != 24: print('No Solutions')
# 6330526221 (19.84) 350 (2021-02-19 16:24) def calc( num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0 : r = num1 / num2 else : r = 99999 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x = nums.split() y = [int(z) for z in x] cases = generate_all_combinations( y , '+-*/' ) for e in cases : if calc(calc(calc(e[0],e[1],e[2]),e[3],e[4]),e[5],e[6]) == 24 : print('( '+'( '+str(e[0])+' '+str(e[1])+' '+str(e[2])+' '+') '+str(e[3])+' '+str(e[4])+' '+') '+str(e[5])+' '+str(e[6])+' '+'= '+'24') exit() elif calc(calc(e[0],e[1],calc(e[2],e[3],e[4])),e[5],e[6]) == 24 : print('( '+str(e[0])+' '+str(e[1])+' '+'( '+str(e[2])+' '+str(e[3])+' '+str(e[4])+' '+') '+') '+str(e[5])+' '+str(e[6])+' = '+'24') exit() elif calc(calc(e[0],e[1],e[2]),e[3],calc(e[4],e[5],e[6])) == 24: print('( '+str(e[0])+' '+str(e[1])+' '+str(e[2])+' '+') '+str(e[3])+' '+'( '+str(e[4])+' '+str(e[5])+' '+str(e[6])+' ) '+'= '+'24') exit() elif calc(e[0],e[1],calc(calc(e[2],e[3],e[4]),e[5],e[6])) == 24: print(str(e[0])+' '+str(e[1])+' '+'( '+'( '+str(e[2])+' '+str(e[3])+' '+str(e[4])+' ) '+str(e[5])+' '+str(e[6])+' ) '+'= '+'24') exit() elif calc(e[0],e[1],calc(e[2],e[3],calc(e[4],e[5],e[6]))) == 24: print(str(e[0])+' '+str(e[1])+' '+'( '+str(e[2])+' '+str(e[3])+' '+'( '+str(e[4])+' '+str(e[5])+' '+str(e[6])+' ) '+') '+'= '+'24') exit() print('No solutions')
# 6330527921 (16) 351 (2021-02-21 22:50) def calc(num1, op, num2): if num1 == 'error' or num2 == 'error': r = 'error' elif op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/' and float(num2) != 0: r = float(num1) / float(num2) else : r = 'error' return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( nums.split(' '), '+-*/' ) k = 0 while k <= len(cases) : r1 = calc(cases[k][0], cases[k][1], cases[k][2]) r2 = calc(r1, cases[k][3], cases[k][4]) r = calc(r2, cases[k][5], cases[k][6]) if r == 24 : print('( ( '+' '.join(cases[k][0:3])+' ) '+' '.join(cases[k][3:5])+' ) '+' '.join(cases[k][5:])+' = 24') break else : r1 = calc(cases[k][0], cases[k][1], cases[k][2]) r2 = calc(cases[k][4], cases[k][5], cases[k][6]) r = calc(r1, cases[k][3], r2) if r == 24 : print('( '+' '.join(cases[k][0:3])+' ) '+' '.join(cases[k][3:4])+' ( '+' '.join(cases[k][4:])+' )'+' = 24') break else : r1 = calc(cases[k][2], cases[k][3], cases[k][4]) r2 = calc(cases[k][0], cases[k][1], r1) r = calc(r2, cases[k][5], cases[k][6]) if r == 24 : print('( '+' '.join(cases[k][0:2])+' ( '+' '.join(cases[k][2:5])+' ) ) '+' '.join(cases[k][5:])+' = 24') break else : r1 = calc(cases[k][2], cases[k][3], cases[k][4]) r2 = calc(r1, cases[k][5], cases[k][6]) r = calc(cases[k][0], cases[k][1], r2) if r == 24 : print(' '.join(cases[k][0:2])+' ( ( '+' '.join(cases[k][2:5])+' ) '+' '.join(cases[k][5:])+' ) '+' = 24') break else : r1 = calc(cases[k][4], cases[k][5], cases[k][6]) r2 = calc(cases[k][2], cases[k][3], r1) r = calc(cases[k][0], cases[k][1], r2) if r == 24 : print(' '.join(cases[k][0:2])+' ( '+' '.join(cases[k][2:5])+' ( ( '+' '.join(cases[k][5:])+' ) '+' = 24') break k += 1 if k == len(cases) : print('No Solutions')
# 6330528521 (19.8) 352 (2021-02-21 22:59) import math def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 ==0: r=math.inf else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations(nums,'+-*/') a=0 while a<len(cases): case=cases[a] case[0]=int(case[0]) case[2]=int(case[2]) case[4]=int(case[4]) case[6]=int(case[6]) if calc(calc(calc(case[0],case[1],case[2]),case[3],case[4]),case[5],case[6]) == 24: print('(','(',case[0],case[1],case[2],')',case[3],case[4],')',case[5],case[6],'=',24) break elif calc(calc(case[0],case[1],calc(case[2],case[3],case[4])),case[5],case[6]) == 24: print('(',case[0],case[1],'(',case[2],case[3],case[4],')',')',case[5],case[6],'=',24) break elif calc(calc(case[0],case[1],case[2]),case[3],calc(case[4],case[5],case[6])) == 24 : print('(',case[0],case[1],case[2],')',case[3],'(',case[4],case[5],case[6],')','=',24) break elif calc(case[0],case[1],calc(calc(case[2],case[3],case[4]),case[5],case[6])) == 24 : print(case[0],case[1],'(','(',case[2],case[3],case[4],')',case[5],case[6],')','=',24) break elif calc(case[0],case[1],(calc(case[2],case[3],calc(case[4],case[5],case[6])))) == 24 : print(case[0],case[1],'(',case[2],case[3],'(',case[4],case[5],case[6],')',')','=',24) a=a+1 if a>=len(cases) : print('No Solutions')
# 6330529121 (20) 353 (2021-02-22 18:33) def calc(num1,sign,num2): process = 0.0 if sign == '+': process = float(num1)+float(num2) if sign == '-': process = float(num1)-float(num2) if sign == '*': process = float(num1)*float(num2) if sign == '/': if float(num2) != 0: process = float(num1)/float(num2) else : process = 0 return process #--------------------------------------------------------- numbers = input('Enter 4 integers: ') numberslists = numbers.split() finish = False cases = generate_all_combinations( numberslists, '+-*/' ) for ch in cases : if 24 == calc(calc(calc(ch[0],ch[1],ch[2]),ch[3],ch[4]),ch[5],ch[6]): print('(','(',ch[0],ch[1],ch[2],')',ch[3],ch[4],')',ch[5],ch[6],'= 24') finish = True break if 24 == calc(calc(ch[0],ch[1],calc(ch[2],ch[3],ch[4])),ch[5],ch[6]): print('(',ch[0],ch[1],'(',ch[2],ch[3],ch[4],')',')',ch[5],ch[6],'= 24') finish = True break if 24 == calc(calc(ch[0],ch[1],ch[2]),ch[3],calc(ch[4],ch[5],ch[6])): print('(',ch[0],ch[1],ch[2],')',ch[3],'(',ch[4],ch[5],ch[6],')','= 24') finish = True break if 24 == calc(ch[0],ch[1],calc(calc(ch[2],ch[3],ch[4]),ch[5],ch[6])): print(ch[0],ch[1],'(','(',ch[2],ch[3],ch[4],')',ch[5],ch[6],')','= 24') finish = True break if 24 == calc(ch[0],ch[1],calc(ch[2],ch[3],calc(ch[4],ch[5],ch[6]))) : print(ch[0],ch[1],'(',ch[2],ch[3],'(',ch[4],ch[5],ch[6],')',')','= 24') finish = True break if not finish : print('No Solutions') #
# 6330530721 (18) 354 (2021-02-21 00:35) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0 : num2 = math.inf r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = nums.split() num1 = int(num[0]) num2 = int(num[1]) num3 = int(num[2]) num4 = int(num[3]) cases = generate_all_combinations([num1,num2,num3,num4], '+-*/') for k in cases : c = 0 n1 = k[0] op1 = k[1] n2 = k[2] op2 = k[3] n3 = k[4] op3 = k[5] n4 = k[6] if calc(calc(calc(n1,op1,n2),op2,n3),op3,n4) == 24 : print('(','(',n1,op1,n2,')',op2,n3,')',op3,n4,'=','24') c+=1 break elif calc(calc(n1,op1,calc(n2,op2,n3)),op3,n4) == 24 : print('(',n1,op1,'(',n2,op2,n3,')',')',op3,n4,')','=','24') break elif calc(calc(n1,op1,n2),op2,calc(n3,op3,n4)) == 24 : print('(',n1,op1,n2,')',op2,'(',n3,op3,n4,')','=','24') c+=1 break elif calc(n1,op1,calc(calc(n2,op2,n3),op3,n4)) == 24 : print(n1,op1,'(','(',n2,op2,n3,')',op3,n4,')','=','24') c+=1 break elif calc(n1,op1,calc(n2,op2,calc(n3,op3,n4))) == 24 : print(n1,op1,'(',n2,op2,'(',n3,op3,n4,')',')','= 24') c+=1 break if c == 0 : print('No Solutions')
# 6330531321 (20) 355 (2021-02-22 13:53) def calc(num1,op,num2): pf = not False if num2 == "error" or num1 == "error": r = "error" elif op == "+": r = float(num1) + float(num2) elif op == "-": r = float(num1) - float(num2) elif op == "*": r = float(num1) * float(num2) elif op == "/": if num2 == "0.0" or num2 == "0": pf = not True else: r = float(num1) / float(num2) if pf == False: r = "error" return r def one(cases): a1 = calc(str(e[0]),str(e[1]),str(e[2])) b1= calc(str(a1),str(e[3]),str(e[4])) c1 = calc(str(b1),str(e[5]),str(e[6])) return c1 ###################################### def two(cases): a2 = calc(str(e[2]),str(e[3]),str(e[4])) b2 = calc(str(e[0]),str(e[1]),str(a2)) c1 = calc(str(b2),str(e[5]),str(e[6])) return c1 ####################################### def three(cases): a3 = calc(str(e[0]),str(e[1]),str(e[2])) b3 = calc(str(e[4]),str(e[5]),str(e[6])) c1 = calc(str(a3),str(e[3]),str(b3)) return c1 ######################################## def four(cases): a4 = calc(str(e[2]),str(e[3]),str(e[4])) b4 = calc(str(a4),str(e[5]),str(e[6])) c1 = calc(str(e[0]),str(e[1]),str(b4)) return c1 ######################################## def five(cases): a5 = calc(str(e[4]),str(e[5]),str(e[6])) b5 = calc(str(e[2]),str(e[3]),str(a5)) c1 = calc(str(e[0]),str(e[1]),str(b5)) return c1 #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations(nums.split(),'+-*/' ) perfume = 0 for e in cases: if one(e) == 24: correct1 = ["(","(",str(e[0]),str(e[1]),str(e[2]),")",str(e[3]),str(e[4]),")",str(e[5]),str(e[6])] correct1 = " ".join(correct1) print(correct1+ " = 24") perfume += 1 break elif two(e) == 24: correct2 = ["(",str(e[0]),str(e[1]),"(",str(e[2]),str(e[3]),str(e[4]),")",")",str(e[5]),str(e[6])] correct2 = " ".join(correct2) print(correct2+ " = 24") perfume += 1 break elif three(e) == 24: correct3 = ["(",str(e[0]),str(e[1]),str(e[2]),")",str(e[3]),"(",str(e[4]),str(e[5]),str(e[6]),")"] correct3 = " ".join(correct3) print(correct3+ " = 24") perfume += 1 break elif four(e) == 24: correct4 = [str(e[0]),str(e[1]),"(","(",str(e[2]),str(e[3]),str(e[4]),")",str(e[5]),str(e[6]),")"] correct4 = " ".join(correct4) print(correct4+ " = 24") perfume += 1 break elif five(e) == 24: correct5 = [str(e[0]),str(e[1]),"(",str(e[2]),str(e[3]),"(",str(e[4]),str(e[5]),str(e[6]),")",")"] correct5 = " ".join(correct5) print(correct5 + " = 24") perfume += 1 break if perfume == 0: print("No Solutions") #ยากจุงTT#
# 6330532021 (20) 356 (2021-02-19 17:54) def calc(num1,operation,num2): if operation == '+': r = num1 + num2 elif operation == '/': if num2 == 0: num2 = 0.0000000000000000000000000000000000000000000000001 r = num1 / num2 elif operation == '*': r = num1 * num2 elif operation == '-': r = num1 - num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x = [int(e) for e in nums.split()] cases = generate_all_combinations( x , '+-*/' ) for i in cases: r = 0 if r != 24: r = calc(i[0],i[1],i[2]) r = calc(r,i[3], i[4]) r = calc(r,i[5], i[6]) if r == 24: print('( ( '+str(i[0])+' '+str(i[1])+' '+str(i[2])+' ) '+str(i[3])+' '+str(i[4])+' ) '+str(i[5])+' '+str(i[6]) + ' = 24') break elif r != 24: r = calc(i[2],i[3],i[4]) r = calc(i[0],i[1], r) r = calc(r,i[5], i[6]) if r == 24: print('( '+str(i[0])+' '+str(i[1])+' '+'( '+str(i[2])+' '+str(i[3])+' '+str(i[4])+' ) ) '+str(i[5])+' '+str(i[6])+ ' = 24') break elif r != 24: r1 = calc(i[0],i[1],i[2]) r2 = calc(i[4],i[5],i[6]) r = calc(r1,i[3],r2) if r == 24: print('( '+str(i[0])+' '+str(i[1])+' '+str(i[2])+' ) '+str(i[3])+' ( '+str(i[4])+' '+str(i[5])+' '+str(i[6])+' )'+ ' = 24') break elif r != 24: r = calc(i[2],i[3],i[4]) r = calc(r,i[5], i[6]) r = calc(i[0],i[1], r) if r == 24: print(str(i[0])+' '+str(i[1])+' ( ( '+str(i[2])+' '+str(i[3])+' '+str(i[4])+' ) '+str(i[5])+' '+str(i[6])+' ) '+ ' = 24') break elif r != 24: r = calc(i[4],i[5],i[6]) r = calc(i[2],i[3], r) r = calc(i[0],i[1], r) if r == 24: print(str(i[0])+' '+str(i[1])+' ( '+str(i[2])+' '+str(i[3])+' ( '+str(i[4])+' '+str(i[5])+' '+str(i[6])+' ) )' +' = 24') break else: print('No Solutions')
# 6330533621 (6) 357 (2021-02-20 13:45) #--------------------------------------------------------- nums = input('Enter 4 integers: ') num=nums.split() cases = generate_all_combinations( num, '+-*/') for i in range(len(cases)): (cases[i])[0] = ('{}').format((cases[i])[0]) (cases[i])[2] = ('{}').format((cases[i])[2]) (cases[i])[4] = ('{}').format((cases[i])[4]) (cases[i])[6] = ('{}').format((cases[i])[6]) y=[] wong_leb=y for i in range(len(cases)): a=cases[i] a1='(({}{}{}){}{}){}{}'.format(a[0],a[1],a[2],a[3],a[4],a[5],a[6]) y.append(a1) b=cases[i] b1='({}{}({}{}{})){}{}'.format(b[0],b[1],b[2],b[3],b[4],b[5],b[6]) y.append(b1) c=cases[i] c1='({}{}{}){}({}{}{})'.format(b[0],b[1],b[2],b[3],b[4],b[5],b[6]) y.append(c1) d=cases[i] d1='{}{}(({}{}{}){}{})'.format(b[0],b[1],b[2],b[3],b[4],b[5],b[6]) y.append(d1) e=cases[i] e1='{}{}({}{}({}{}{}))'.format(b[0],b[1],b[2],b[3],b[4],b[5],b[6]) y.append(e1) ans=0 for i in wong_leb: try: ruam=eval(i) if ruam == 24: ans = i break elif ruam != 24: ans = 'No Solutions' except ZeroDivisionError: continue ans_print=[] if ans=='No Solutions': ans_print='No Solutions' else: for i in range(len(ans)): ans_print+=ans[i]+' ' ans_print='{}= 24'.format(''.join(ans_print)) print(ans_print)
# 6330534221 (20) 358 (2021-02-22 14:21) def calc(num1,op,num2): if op == "+": r= num1+num2 elif op == "-": r= num1-num2 elif op == "*": r=num1*num2 elif op == "/": r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums= [int(e) for e in nums.split()] ... ... cases = generate_all_combinations( nums, '+-*/' ) for n in range(len(cases)): test=cases[n] for i in range(5): if i==0: er=0 if test[2]==0 and test[1]=="/": fis=9999999 er=9999 else : fis=calc(test[0],test[1],test[2]) if test[4]==0 and test[3]=="/": sec=9999999 er=9999 else: sec=calc(fis,test[3],test[4]) if test[6]==0 and test[5]=="/": thi=9999999 er=9999 else: thi=calc(sec,test[5],test[6]) elif i==1: if test[4]==0 and test[3]=="/": fis=9999999 er=9999 else: fis=calc(test[2],test[3],test[4]) if fis==0 and test[1]=="/": sec=9999999 er=9999 else: sec=calc(test[0],test[1],fis) if test[6]==0 and test[5]=="/": thi=9999999 er=9999 else: thi=calc(sec,test[5],test[6]) elif i==2: if test[2]==0 and test[1]=="/": fis=9999999 er=9999 else: fis=calc(test[0],test[1],test[2]) if test[6]==0 and test[5]=="/": sec=9999999 er=9999 else: sec=calc(test[4],test[5],test[6]) if sec==0 and test[3]=="/": thi=9999999 er=9999 else: thi=calc(fis,test[3],sec) elif i==3: if test[4]==0 and test[3]=="/": fis=9999999 er=9999 else: fis=calc(test[2],test[3],test[4]) if test[6]==0 and test[5]=="/": sec=9999999 er=9999 else: sec=calc(fis,test[5],test[6]) if sec==0 and test[1]=="/": thi=9999999 er=9999 else: thi=calc(test[0],test[1],sec) elif i==4: if test[6]==0 and test[5]=="/": fis=9999999 er=9999 else: fis=calc(test[4],test[5],test[6]) if fis==0 and test[3]=="/": sec=9999999 er=9999 else: sec=calc(test[2],test[3],fis) if sec==0 and test[1]=="/": thi=9999999 er=9999 else: thi=calc(test[0],test[1],sec) if thi+er==24: break if thi+er==24: break if thi+er==24: if i==0: print("(","(",test[0],test[1],test[2],")",test[3],test[4],")",test[5],test[6],"= 24") if i==1: print("(",test[0],test[1],"(",test[2],test[3],test[4],")",")",test[5],test[6],"= 24") if i==2: print("(",test[0],test[1],test[2],")",test[3],"(",test[4],test[5],test[6],")","= 24") if i==3: print(test[0],test[1],"(","(",test[2],test[3],test[4],")",test[5],test[6],")","= 24") if i==4: print(test[0],test[1],"(",test[2],test[3],"(",test[4],test[5],test[6],")",")","= 24") else: print("No Solutions")
# 6330535921 (16) 359 (2021-02-20 23:29) def lis(x): a = x.split(' ') lis = [int(a[0]),int(a[1]),int(a[2]),int(a[3])] return lis def calc(n1,op,n2,r=0): if op == '+': r = n1+n2 elif op == '-': r = n1-n2 elif op == '*': r = n1*n2 elif op == '/': if n2 == 0: r = 0 else: r = n1/n2 return r #--------------------------------------------------------- import random nums = input('Enter 4 integers: ') num1 = lis(nums) d = [] cases = generate_all_combinations( num1, '+-*/' ) for i in range(len(cases)): n = 0 c = cases[i] if n == 0: x = calc(c[0],c[1],c[2],0) y = calc(float(x),c[3],c[4],0) z = calc(float(y),c[5],c[6],0) n+=1 if z == 24: d1 = '( ( '+str(c[0])+' '+str(c[1])+' '+str(c[2])+' )'+' '+str(c[3])+' '+str(c[4])+' ) '+str(c[5])+' '+str(c[6]) d.append(d1) if n == 1: x = calc(c[2],c[3],c[4],0) y = calc(float(x),c[1],c[0],0) z = calc(float(y),c[5],c[6],0) n+=1 if z == 24: d2 = '( '+str(c[0])+' '+str(c[1])+' ( '+str(c[2])+' '+str(c[3])+' '+str(c[4])+' ) ) '+str(c[5])+' '+str(c[6]) d.append(d2) if n == 2: x = calc(c[0],c[1],c[2],0) y = calc(c[4],c[5],c[6],0) z = calc(float(x),c[3],float(y),0) n+=1 if z == 24: d3 = '( '+str(c[0])+' '+str(c[1])+' '+str(c[2])+' ) '+str(c[3])+' ( '+str(c[4])+' '+str(c[5])+' '+str(c[6])+' )' d.append(d3) if n == 3: x = calc(c[2],c[3],c[4],0) y = calc(float(x),c[5],c[6],0) z = calc(c[0],c[1],float(y),0) n+=1 if z == 24: d4 = str(c[0])+' '+str(c[1])+' ( ( '+str(c[2])+' '+str(c[3])+' '+str(c[4])+' ) '+str(c[5])+' '+str(c[6])+' )' d.append(d4) if n == 4: x = calc(c[4],c[5],c[6],0) y = calc(c[2],c[3],float(x),0) z = calc(c[0],c[1],float(y),0) n+=1 if z == 24: d5 = str(c[0])+' '+str(c[1])+' ( '+str(c[2])+' '+str(c[3])+' ( '+str(c[4])+' '+str(c[5])+' '+str(c[6])+' ) ) ' d.append(d5) if d == [] : print('No Solutions') else : ans = random.choice(d) print(ans +' = 24')
# 6330536521 (20) 360 (2021-02-20 18:06) def calc(num1, op , num2): if op=="+": r = float(num1) + float(num2) elif op=="-": r = float(num1) - float(num2) elif op=="*": r = float(num1) * float(num2) else: r = float(num1) / float(num2) return r def bla1(n1,op1,n2,op2,n3,op3,n4): if op1!="/" or n2!=0 : n_1=calc(n1,op1,n2) if op2!="/" or n3!=0 : n_2=calc(n_1,op2,n3) if op3!="/" or n4!=0 : n_3=calc(n_2,op3,n4) else : n_3=0 else : n_3=0 else : n_3=0 return n_3 def long1(n1,op1,n2,op2,n3,op3,n4): long=["(","(",n1,op1,n2,")",op2,n3,")",op3,n4,"= 24"] long=" ".join(long) return long def bla2(n1,op1,n2,op2,n3,op3,n4): if op2!="/" or n3!=0 : n_1=calc(n2,op2,n3) if op1!="/" or n_1!=0 : n_2=calc(n1,op1,n_1) if op3!="/" or n4!=0 : n_3=calc(n_2,op3,n4) else : n_3=0 else : n_3=0 else : n_3=0 return n_3 def long2(n1,op1,n2,op2,n3,op3,n4): long=["(",n1,op1,"(",n2,op2,n3,")",")",op3,n4,"= 24"] long=" ".join(long) return long def bla3(n1,op1,n2,op2,n3,op3,n4): if op1!="/" or n2!=0 : n_1=calc(n1,op1,n2) if op3!="/" or n4!=0 : n_2=calc(n3,op3,n4) if op2!="/" or n_2!=0 : n_3=calc(n_1,op2,n_2) else : n_3=0 else : n_3=0 else : n_3=0 return n_3 def long3(n1,op1,n2,op2,n3,op3,n4): long=["(",n1,op1,n2,")",op2,"(",n3,op3,n4,")","= 24"] long=" ".join(long) return long def bla4(n1,op1,n2,op2,n3,op3,n4): if op2!="/" or n3!=0 : n_1=calc(n2,op2,n3) if op3!="/" or n4!=0 : n_2=calc(n_1,op3,n4) if op1!="/" or n_2!=0 : n_3=calc(n1,op1,n_2) else : n_3=0 else : n_3=0 else : n_3=0 return n_3 def long4(n1,op1,n2,op2,n3,op3,n4): long=[n1,op1,"(","(",n2,op2,n3,")",op3,n4,")","= 24"] long=" ".join(long) return long def bla5(n1,op1,n2,op2,n3,op3,n4): if op3!="/" or n4!=0 : n_1=calc(n3,op3,n4) if op2!="/" or n_1!=0 : n_2=calc(n2,op2,n_1) if op1!="/" or n_2!=0 : n_3=calc(n1,op1,n_2) else : n_3=0 else : n_3=0 else : n_3=0 return n_3 def long5(n1,op1,n2,op2,n3,op3,n4): long=[n1,op1,"(",n2,op2,"(",n3,op3,n4,")",")","= 24"] long=" ".join(long) return long #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums=nums.split() cases = generate_all_combinations( nums, '+-*/' ) x_=cases for i in range(len(cases)): n_=bla1(x_[i][0],x_[i][1],x_[i][2],x_[i][3],x_[i][4],x_[i][5],x_[i][6]) if n_==24: print(long1(x_[i][0],x_[i][1],x_[i][2],x_[i][3],x_[i][4],x_[i][5],x_[i][6])) break n_=bla2(x_[i][0],x_[i][1],x_[i][2],x_[i][3],x_[i][4],x_[i][5],x_[i][6]) if n_==24: print(long2(x_[i][0],x_[i][1],x_[i][2],x_[i][3],x_[i][4],x_[i][5],x_[i][6])) break n_=bla3(x_[i][0],x_[i][1],x_[i][2],x_[i][3],x_[i][4],x_[i][5],x_[i][6]) if n_==24: print(long3(x_[i][0],x_[i][1],x_[i][2],x_[i][3],x_[i][4],x_[i][5],x_[i][6])) break n_=bla4(x_[i][0],x_[i][1],x_[i][2],x_[i][3],x_[i][4],x_[i][5],x_[i][6]) if n_==24: print(long4(x_[i][0],x_[i][1],x_[i][2],x_[i][3],x_[i][4],x_[i][5],x_[i][6])) break n_=bla5(x_[i][0],x_[i][1],x_[i][2],x_[i][3],x_[i][4],x_[i][5],x_[i][6]) if n_==24: print(long5(x_[i][0],x_[i][1],x_[i][2],x_[i][3],x_[i][4],x_[i][5],x_[i][6])) break if n_!=24: print("No Solutions")
# 6330537121 (20) 361 (2021-02-21 19:21) def sum(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0 : num2 = math.inf r = num1 / num2 return r nums = input('Enter 4 integers: ') z = nums.split() z1 = int(z[0]) z2 = int(z[1]) z3 = int(z[2]) z4 = int(z[3]) cases = generate_all_combinations([z1,z2,z3,z4], '+-*/') for k in cases : a = 0 n1 = k[0] n2 = k[1] n3 = k[2] n4 = k[3] n5 = k[4] n6 = k[5] n7 = k[6] if sum(sum(sum(n1,n2,n3),n4,n5),n6,n7) == 24 : print('( (',n1,n2,n3,')',n4,n5,')',n6,n7,'=', '24' ) a +=1 break elif sum(sum(n1,n2,sum(n3,n4,n5)),n6,n7) == 24 : print('(',n1,n2,'(',n3,n4,n5,') )',n6,n7,'=', '24') a +=1 break elif sum(sum(n1,n2,n3),n4,sum(n5,n6,n7)) == 24 : print('(',n1,n2,n3,')',n4,'(',n5,n6,n7,')','=', '24') a +=1 break elif sum(n1,n2,sum(sum(n3,n4,n5),n6,n7)) ==24 : print(n1,n2,'( (',n3,n4,n5,')',n6,n7,')','=','24') a +=1 break elif sum(n1,n2,sum(n3,n4,sum(n5,n6,n7))) == 24 : print(n1,n2,'(',n3,n4,'(',n5,n6,n7,')',')','= 24') a +=1 break if a == 0 : print('No Solutions') #--------------------------------------------------------- ... ...
# 6330538821 (20) 362 (2021-02-20 22:36) def calc(num1, op, num2): num1=float(num1) num2=float(num2) if op == '+': r = num1 + num2 elif op == '-' : r= num1 - num2 elif op == '*' : r= num1 * num2 elif op == '/' : if num2 == 0 : r=math.inf else: r= num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums =nums.split(" ") cases = generate_all_combinations( nums, '+-*/' ) c1=cases.copy() c2=cases.copy() c3=cases.copy() c4=cases.copy() c5=cases.copy() for i in range (len(c1)) : a=calc(c1[i][0],c1[i][1],c1[i][2]) a=calc(a,c1[i][3],c1[i][4]) a=calc(a,c1[i][5],c1[i][6]) if a == 24 : cc1=str(c1[i]) cc1=cc1[2:-2] cc1=cc1.split("', '") cc1='( ( '+cc1[0]+' '+cc1[1]+' '+cc1[2]+' ) '+cc1[3]+' '+cc1[4]+' ) '+cc1[5]+' '+cc1[6]+' = 24' print(str(cc1)) c2='' c3='' c4='' c5='' break for i in range (len(c2)) : b=calc(c2[i][2],c2[i][3],c2[i][4]) b=calc(c2[i][0],c2[i][1],b) b=calc(b,c2[i][5],c2[i][6]) if b == 24 : cc2=str(c2[i]) cc2=cc2[2:-2] cc2=cc2.split("', '") cc2='( '+cc2[0]+' '+cc2[1]+' ( '+cc2[2]+' '+cc2[3]+' '+cc2[4]+' ) ) '+cc2[5]+" "+cc2[6]+' = 24' print(str(cc2)) c3='' c4='' c5='' break for i in range (len(c3)) : c=calc(c3[i][0],c3[i][1],c3[i][2]) cc=calc(c3[i][4],c3[i][5],c3[i][6]) c=calc(c,c3[i][3],cc) if c == 24 : cc3=str(c3[i]) cc3=cc3[2:-2] cc3=cc3.split("', '") cc3='( '+cc3[0]+' '+cc3[1]+' '+cc3[2]+' ) '+cc3[3]+' ( '+cc3[4]+' '+cc3[5]+' '+cc3[6]+' )'+' = 24' print(cc3) c4='' c5='' break for i in range (len(c4)) : d=calc(c4[i][2],c4[i][3],c4[i][4]) d=calc(d,c4[i][5],c4[i][6]) d=calc(c4[i][0],c4[i][1],d) if d == 24 : cc4=str(c4[i]) cc4=cc4[2:-2] cc4=cc4.split("', '") cc4=cc4[0]+' '+cc4[1]+' ( ( '+cc4[2]+' '+cc4[3]+' '+cc4[4]+" ) "+cc4[5]+' '+cc4[6]+' )'+' = 24' print(cc4) c5='' break for i in range (len(c5)) : e=calc(c5[i][4],c5[i][5],c5[i][6]) e=calc(c5[i][2],c5[i][3],e) e=calc(c5[i][0],c5[i][1],e) if e == 24 : cc5=str(c5[i]) cc5=cc5[2:-2] cc5=cc5.split("', '") cc5=cc5[0]+' '+cc5[1]+' ( '+cc5[2]+' '+cc5[3]+' ( '+cc5[4]+' '+cc5[5]+' '+cc5[6]+' ) )'+' = 24' print(cc5) break if a != 24 and b!=24 and c!=24 and d!=24 and e!=24 : print('No Solutions')
# 6330539421 (13.2) 363 (2021-02-19 19:16) def call(n1,op,n2): if n1 != 'zero' and n2 != 'zero': if op == '+': r = float(n1) + float(n2) elif op == '-': r = float(n1) - float(n2) elif op == '*': r = float(n1) * float(n2) elif int(n2) != 0: r = float(n1) / float(n2) else: r = 'zero' else: r = 'zero' return r def cal(a): y = 0 if call(call(call(a[0],a[1],a[2]),a[3],a[4]),a[5],a[6]) == 24: y = 1 if call(call(a[0],a[1],call(a[2],a[3],a[4])),a[5],a[6]) == 24: y = 2 if call(call(a[0],a[1],a[2]),a[3],call(a[4],a[5],a[6])) == 24: y = 3 if call(a[0],a[1],call(call(a[2],a[3],a[4]),a[5],a[6])) == 24: y = 4 if call(a[0],a[1],call(a[2],a[3],call(a[4],a[5],a[6]))) == 24: y = 5 return y #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations( nums, '+-*/' ) i = 0 y = 0 while i < len(cases): a = cases[i] y = cal(a) if y != 0: break i += 1 if y == 1: print('(('+a[0]+a[1]+a[2]+')'+a[3]+a[4]+')'+a[5]+a[6]) elif y == 2: print('('+a[0]+a[1]+'('+a[2]+a[3]+a[4]+'))'+a[5]+a[6]) elif y == 3: print('('+a[0]+a[1]+a[2]+')'+a[3]+'('+a[4]+a[5]+a[6]+')') elif y == 4: print(a[0]+a[1]+'(('+a[2]+a[3]+a[4]+')'+a[5]+a[6]+')') elif y == 5: print(a[0]+a[1]+'('+a[2]+a[3]+'('+a[4]+a[5]+a[6]+'))') elif y == 0 : print('No Solutions') #print(cases)
# 6330540021 (8.28) 364 (2021-02-22 14:16) def divide(x, y): if y==0: return 0 else: return x/y def calculate(A,B,O): if O == '+': r = A + B elif O == '-': r = A - B elif O == '*': r = A * B elif O == '/': r = divide(A,B) return r #--------------------------------------------------------- nums = input('Enter 4 integers : ') a = (int(num) for num in nums.split()) casezero = 0 i = 0 cases = generate_all_combinations( a, '+-*/' ) while i < len(cases): n1=cases[i][0] o1=cases[i][1] n2=cases[i][2] o2=cases[i][3] n3=cases[i][4] o3=cases[i][5] n4=cases[i][6] case1 = calculate(n4,calculate(n3,calculate(n1,n2,o1),o2),o3) case2 = calculate(n4,calculate(n1,calculate(n2,n3,o2),o1),o3) case3 = calculate(calculate(n1,n2,o1),calculate(n3,n4,o3),o2) case4 = calculate(n1,calculate(n4,calculate(n2,n3,o2),o3),o1) case5 = calculate(n1,calculate(n2,calculate(n3,n4,o3),o2),o1) if case1 == 24: print('((',n1,o1,n2,')',o2,n3,')',o3,n4) casezero = 1 break if case2 == 24: print('(',n1,o1,'(',n2,o2,n3,'))',o3,n4) casezero = 1 break if case3 == 24: print('(',n1,o1,n2,')',o2,'(',n3,o3,n4,')') casezero = 1 break if case4 == 24: print(n1,o1,'((',n2,o2,n3,')',o3,n4,')') casezero = 1 break if case5 == 24: print('((',n1,o1,'(',n2,o2,'(',n3,o3,n4,'))') casezero = 1 break i += 1 if casezero == 0: print('No Solutions')
# 6330541621 (20) 365 (2021-02-22 15:15) def calc(num1,operation,num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif operation == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') b = nums.split(' ') cases = generate_all_combinations( [b[0],b[1],b[2],b[3]], '+-*/' ) for i in cases[0::1]: try: if calc(calc(calc(int(i[0]),i[1],int(i[2])),i[3],int(i[4])),i[5],int(i[6])) == 24: print(str('(')+' '+str('(')+' '+((str(i[0])+' '+str(i[1])+' '+str(i[2]))+' '+str(')')+' '+str(i[3])+' '+str(i[4]))+' '+str(')')+' '+str(i[5])+' '+str(i[6])+' = 24') break elif calc(calc(calc(int(i[0]),i[1],int(i[2])),i[3],int(i[4])),i[5],int(i[6])) != 24: if calc(calc(int(i[0]),i[1],(calc(int(i[2]),i[3],int(i[4])))),i[5],int(i[6])) == 24: print(str('(')+' '+(str(i[0])+' '+str(i[1])+' '+str('(')+' '+(str(i[2])+' '+str(i[3])+' '+str(i[4]))+' '+str(')')+' '+str(')'))+' '+str(i[5])+' '+str(i[6])+' = 24') break elif calc(calc(int(i[0]),i[1],(calc(int(i[2]),i[3],int(i[4])))),i[5],int(i[6])) != 24: if calc(calc(int(i[0]),i[1],int(i[2])),i[3],calc(int(i[4]),i[5],int(i[6]))) == 24: print(str('(')+' '+(str(i[0])+' '+str(i[1])+' '+str(i[2]))+' '+str(')')+' '+str(i[3])+' '+str('(')+' '+(str(i[4])+' '+str(i[5])+' '+str(i[6]))+' '+str(')')+' = 24') break elif calc(calc(int(i[0]),i[1],int(i[2])),i[3],calc(int(i[4]),i[5],int(i[6]))) != 24: if calc(int(i[0]),i[1],calc(calc(int(i[2]),i[3],int(i[4])),i[5],int(i[6]))) == 24: print(str(i[0])+' '+str(i[1])+' '+str('(')+' '+str('(')+' '+((str(i[2])+' '+str(i[3])+' '+str(i[4]))+' '+str(')')+' '+str(i[5])+' '+str(i[6]))+' '+str(')')+' = 24') break elif calc(int(i[0]),i[1],calc(calc(int(i[2]),i[3],int(i[4])),i[5],int(i[6]))) != 24: if calc(int(i[0]),i[1],calc(int(i[2]),i[3],calc(int(i[4]),i[5],int(i[6])))) == 24: print(str(i[0])+' '+str(i[1])+' '+str('(')+' '+(str(i[2])+' '+str(i[3])+' '+str('(')+' '+(str(i[4])+' '+str(i[5])+' '+str(i[6])))+' '+str(')')+' '+str(')')+' = 24') break elif calc(int(i[0]),i[1],calc(int(i[2]),i[3],calc(int(i[4]),i[5],int(i[6])))) != 24: if i == cases[-1]: if calc(calc(calc(int(i[0]),i[1],int(i[2])),i[3],int(i[4])),i[5],int(i[6])) == 24: print(str('(')+' '+str('(')+' '+((str(i[0])+' '+str(i[1])+' '+str(i[2]))+' '+str(')')+' '+str(i[3])+' '+str(i[4]))+' '+str(')')+' '+str(i[5])+' '+str(i[6])+' = 24') break elif calc(calc(calc(int(i[0]),i[1],int(i[2])),i[3],int(i[4])),i[5],int(i[6])) != 24: if calc(calc(int(i[0]),i[1],(calc(int(i[2]),i[3],int(i[4])))),i[5],int(i[6])) == 24: print(str('(')+' '+(str(i[0])+' '+str(i[1])+' '+str('(')+' '+(str(i[2])+' '+str(i[3])+' '+str(i[4]))+' '+str(')')+' '+str(')'))+' '+str(i[5])+' '+str(i[6])+' = 24') break elif calc(calc(int(i[0]),i[1],(calc(int(i[2]),i[3],int(i[4])))),i[5],int(i[6])) != 24: if calc(calc(int(i[0]),i[1],int(i[2])),i[3],calc(int(i[4]),i[5],int(i[6]))) == 24: print(str('(')+' '+(str(i[0])+' '+str(i[1])+' '+str(i[2]))+' '+str(')')+' '+str(i[3])+' '+str('(')+' '+(str(i[4])+' '+str(i[5])+' '+str(i[6]))+' '+str(')')+' = 24') break elif calc(calc(int(i[0]),i[1],int(i[2])),i[3],calc(int(i[4]),i[5],int(i[6]))) != 24: if calc(int(i[0]),i[1],calc(calc(int(i[2]),i[3],int(i[4])),i[5],int(i[6]))) == 24: print(str(i[0])+' '+str(i[1])+' '+str('(')+' '+str('(')+' '+((str(i[2])+' '+str(i[3])+' '+str(i[4]))+' '+str(')')+' '+str(i[5])+' '+str(i[6]))+' '+str(')')+' = 24') break elif calc(int(i[0]),i[1],calc(calc(int(i[2]),i[3],int(i[4])),i[5],int(i[6]))) != 24: if calc(int(i[0]),i[1],calc(int(i[2]),i[3],calc(int(i[4]),i[5],int(i[6])))) == 24: print(str(i[0])+' '+str(i[1])+' '+str('(')+' '+(str(i[2])+' '+str(i[3])+' '+str('(')+' '+(str(i[4])+' '+str(i[5])+' '+str(i[6])))+' '+str(')')+' '+str(')')+' = 24') break else: print('No Solutions') if i != cases[-1]: continue except ZeroDivisionError: continue
# 6330542221 (20) 366 (2021-02-22 14:12) def calc(num1,operation,num2): if operation == '+': r = float(num1) + float(num2) elif operation == '-': r = float(num1) - float(num2) elif operation == '*': r = float(num1) * float(num2) elif operation == '/': if float(num2) != 0: r = float(num1) / float(num2) else : r = math.inf return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x = 0 cases = generate_all_combinations(nums.split(), '+-*/' ) for i in range(0,len(cases)): a = calc((cases[i])[0],(cases[i])[1],(cases[i])[2]) a = calc(a,(cases[i])[3],(cases[i])[4]) a = calc(a,(cases[i])[5],(cases[i])[6]) if a == 24 : print('( (',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],'=',24) x = x + 1 break b = calc((cases[i])[2],(cases[i])[3],(cases[i])[4]) b = calc((cases[i])[0],(cases[i])[1],b) b = calc(b,(cases[i])[5],(cases[i])[6]) if b == 24 : print('(',cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],cases[i][4],') )',cases[i][5],cases[i][6],'=',24) x = x + 1 break c1 = calc((cases[i])[0],(cases[i])[1],(cases[i])[2]) c2 = calc((cases[i])[4],(cases[i])[5],(cases[i])[6]) c = calc(c1,(cases[i])[3],c2) if c == 24: print('(',cases[i][0],cases[i][1],cases[i][2],')',cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],')','=',24) x = x + 1 break d = calc((cases[i])[2],(cases[i])[3],(cases[i])[4]) d = calc(d,(cases[i])[5],(cases[i])[6]) d = calc((cases[i])[0],(cases[i])[1],d) if d == 24 : print(cases[i][0],cases[i][1],'( (',cases[i][2],cases[i][3],cases[i][4],')',cases[i][5],cases[i][6],')','=',24) x = x + 1 break e = calc((cases[i])[4],(cases[i])[5],(cases[i])[6]) e = calc((cases[i])[2],(cases[i])[3],e) e = calc((cases[i])[0],(cases[i])[1],e) if e == 24 : print(cases[i][0],cases[i][1],'(',cases[i][2],cases[i][3],'(',cases[i][4],cases[i][5],cases[i][6],') )','=',24) x = x + 1 break if x==0: print('No Solutions')
# 6330543921 (20) 367 (2021-02-18 23:21) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0: r = num1 / num2 elif op == '/' and num2 == 0: r = math.nan return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') s = (int(e) for e in nums.split()) a = 0 i = 0 cases = generate_all_combinations( s, '+-*/' ) while i < len(cases): n1 = calc(calc(calc(cases[i][0], cases[i][1], cases[i][2]), cases[i][3], cases[i][4]), cases[i][5], cases[i][6]) n2 = calc(calc(cases[i][0], cases[i][1], calc(cases[i][2], cases[i][3], cases[i][4])), cases[i][5], cases[i][6]) n3 = calc(calc(cases[i][0], cases[i][1], cases[i][2]), cases[i][3], calc(cases[i][4], cases[i][5], cases[i][6])) n4 = calc(cases[i][0], cases[i][1], calc(calc(cases[i][2], cases[i][3], cases[i][4]), cases[i][5], cases[i][6])) n5 = calc(cases[i][0], cases[i][1], calc(cases[i][2], cases[i][3], calc(cases[i][4], cases[i][5], cases[i][6]))) if n1 == 24: print('( (', cases[i][0], cases[i][1], cases[i][2], ')', cases[i][3], cases[i][4], ')', cases[i][5], cases[i][6], '=', int(n1)) a = 2 break if n2 == 24: print('(', cases[i][0], cases[i][1], '(', cases[i][2], cases[i][3], cases[i][4], ') )', cases[i][5], cases[i][6], '=', int(n2)) a = 2 break if n3 == 24: print('(', cases[i][0], cases[i][1], cases[i][2], ')', cases[i][3], '(', cases[i][4], cases[i][5], cases[i][6], ')', '=', int(n3)) a = 2 break if n4 == 24: print(cases[i][0], cases[i][1], '( (', cases[i][2], cases[i][3], cases[i][4], ')', cases[i][5], cases[i][6], ')', '=', int(n4)) a = 2 break if n5 == 24: print(cases[i][0], cases[i][1], '(', cases[i][2], cases[i][3], '(', cases[i][4], cases[i][5], cases[i][6], ') )', '=', int(n5)) a = 2 break i += 1 if a == 0: print('No Solutions')
# 6330544521 (20) 368 (2021-02-18 21:52) def calc(num1, operation, num2): num1 = float(num1) num2 = float(num2) if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif num2 != 0 and operation == '/': r = num1 / num2 elif num2 == 0 and operation == '/': r = math.nan return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') check = 0 cases = generate_all_combinations( nums.split(), '+-*/' ) for i in range(len(cases)): a1 = calc(calc(calc(cases[i][0], cases[i][1], cases[i][2]), cases[i][3], cases[i][4]), cases[i][5], cases[i][6]) a2 = calc(calc(cases[i][0], cases[i][1], calc(cases[i][2], cases[i][3], cases[i][4])), cases[i][5], cases[i][6]) a3 = calc(calc(cases[i][0], cases[i][1], cases[i][2]), cases[i][3], calc(cases[i][4], cases[i][5], cases[i][6])) a4 = calc(cases[i][0], cases[i][1], calc(calc(cases[i][2], cases[i][3], cases[i][4]), cases[i][5], cases[i][6])) a5 = calc(cases[i][0], cases[i][1], calc(cases[i][2], cases[i][3], calc(cases[i][4] , cases[i][5], cases[i][6]))) if a1 == 24: print('( (', cases[i][0], cases[i][1], cases[i][2], ')', cases[i][3], cases[i][4], ')', cases[i][5], cases[i][6], '=', int(a1)) check = 1 break if a2 == 24: print('(', cases[i][0], cases[i][1], '(', cases[i][2], cases[i][3], cases[i][4], ') )', cases[i][5], cases[i][6], '=', int(a2)) check = 1 break if a3 == 24: print('(', cases[i][0], cases[i][1], cases[i][2], ')', cases[i][3], '(' , cases[i][4], cases[i][5], cases[i][6], ')', '=', int(a3)) check = 1 break if a4 == 24: print(cases[i][0], cases[i][1], '( (', cases[i][2], cases[i][3], cases[i][4], ')', cases[i][5], cases[i][6], ')', '=', int(a4)) check = 1 break if a5 == 24: print(cases[i][0], cases[i][1], '(', cases[i][2], cases[i][3], '(', cases[i][4], cases[i][5], cases[i][6], ') )', '=', int(a5)) check = 1 break if check == 0: print('No Solutions')
# 6330545121 (20) 369 (2021-02-20 15:31) def listToString(s): str1 = "" for ele in i: str1 += str(ele) return str1 #--------------------------------------------------------- nums = input('Enter 4 integers: ') Data = [int(e) for e in nums.split()] cases = generate_all_combinations( Data, '+-*/' ) cases1 = [] for i in range(len(cases)) : # 2 วงเล็บ(ใหญ่๙เล็ก) #ซ้าย temp = cases[i].copy() temp.insert(0,'(') temp.insert(0,'(') temp.insert(5,')') temp.insert(8,')') cases1.append(temp) #ขวา temp = cases[i].copy() temp.insert(0,'(') temp.insert(3,'(') temp.insert(7,')') temp.insert(7,')') cases1.append(temp) # 1 วงเล็บใหญ่ #ซ้าย temp = cases[i].copy() temp.insert(0,'(') temp.insert(6,')') cases1.append(temp) #วงเล็บใหญ่ที่ 2-4 ตัวแรก # 2 วงเล็บ temp = cases[i].copy() temp.insert(2,'(') temp.insert(2,'(') temp.insert(7,')') temp.insert(10,')') cases1.append(temp) temp = cases[i].copy() temp.insert(2,'(') temp.insert(5,'(') temp.insert(9,')') temp.insert(10,')') cases1.append(temp) # 1 วงเล็บ temp = cases[i].copy() temp.insert(2,'(') temp.insert(8,')') cases1.append(temp) # 2 วงเล็บซ้ายขวา temp = cases[i].copy() temp.insert(0,'(') temp.insert(4,')') temp.insert(6,'(') temp.insert(10,')') cases1.append(temp) # วงเล็บเดียว # ติดกัน temp = cases[i].copy() temp.insert(0,'(') temp.insert(4,')') cases1.append(temp) temp = cases[i].copy() temp.insert(2,'(') temp.insert(6,')') cases1.append(temp) temp = cases[i].copy() temp.insert(4,'(') temp.insert(8,')') cases1.append(temp) check = 0 for i in cases1: K = listToString(i) try: if eval(K) == 24: check = check+1 for j in i: print(j,end =' ' ) print('= 24') break except ZeroDivisionError: continue if check == 0: print('No Solutions')
# 6330547421 (14) 370 (2021-02-22 21:14) def calc(num1,op,num2) : num1 = int(num1) num2 = int(num2) if op == '+' : s = num1 + num2 elif op == '-' : s = num1 - num2 elif op == '*' : s = num1 * num2 elif op == '/' : if num2 != 0 : s = num1 / num2 elif num2 == 0 : s = 0 return s def step1(slist) : n1=slist[0] o1=slist[1] n2=slist[2] o2=slist[3] n3=slist[4] o3=slist[5] n4=slist[6] su = calc(calc(calc(n1,o1,n2),o2,n3),o3,n4) return su def step2(slist) : n1=slist[0] o1=slist[1] n2=slist[2] o2=slist[3] n3=slist[4] o3=slist[5] n4=slist[6] su = calc(calc(n1,o1,calc(n2,o2,n3)),o3,n4) return su def step3(slist) : n1=slist[0] o1=slist[1] n2=slist[2] o2=slist[3] n3=slist[4] o3=slist[5] n4=slist[6] su = calc(calc(n1,o1,n2),o2,calc(n3,o3,n4)) return su def step4(slist) : n1=slist[0] o1=slist[1] n2=slist[2] o2=slist[3] n3=slist[4] o3=slist[5] n4=slist[6] su = calc(n1,o1,calc(calc(n2,o2,n3),o3,n4)) return su def step5(slist) : n1=slist[0] o1=slist[1] n2=slist[2] o2=slist[3] n3=slist[4] o3=slist[5] n4=slist[6] su = calc(n1,o1,calc(n2,o2,calc(n3,o3,n4))) return su #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations( nums, '+-*/' ) for i in cases : if step1(i) == 24 : n1=i[0] o1=i[1] n2=i[2] o2=i[3] n3=i[4] o3=i[5] n4=i[6] print('( (',n1,o1,n2,')',o2,n3,')',o3,n4,'= 24') break elif step2(i) == 24 : n1=i[0] o1=i[1] n2=i[2] o2=i[3] n3=i[4] o3=i[5] n4=i[6] print('(',n1,o1,'(',n2,o2,n3,') )',o3,n4,'= 24') break elif step3(i) == 24 : n1=i[0] o1=i[1] n2=i[2] o2=i[3] n3=i[4] o3=i[5] n4=i[6] print('(',n1,o1,n2,')',o2,'(',n3,o3,n4,')','= 24') break elif step4(i) == 24 : n1=i[0] o1=i[1] n2=i[2] o2=i[3] n3=i[4] o3=i[5] n4=i[6] print(n1,o1,'( (',n2,o2,n3,')',o3,n4,')','= 24') break elif step5(i) == 24 : n1=i[0] o1=i[1] n2=i[2] o2=i[3] n3=i[4] o3=i[5] n4=i[6] print(n1,o1,'(',n2,o2,'(',n3,o3,n4,') )','= 24') break if step1(i) != 24 and step2(i) != 24 and step3(i) != 24 and step4(i) != 24 and step5(i) != 24 : print('No Solutions')
# 6330548021 (16) 371 (2021-02-20 20:37) def calc(num1, op, num2) : if op == '+' : r = num1 + num2 elif op == '-' : r = num1 - num2 elif op == '*' : r = num1 * num2 elif num2 == 0 : r = 3000000001 elif op == '/' : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( [int(e) for e in nums.split()], '+-*/' ) a = 0 for i in cases : if i[1] == '/' or i[3] == 0 or i[5] == 0 : if i[1] == '/' : if i[2] == 0 : a = 0 elif calc(i[2],i[3],i[4]) == 0 : a = 0 elif calc(i[2],i[3],calc(i[4],i[5],i[6])) == 0 : a = 0 if i[3] == '/' : if i[4] == 0 : a = 0 elif calc(i[4],i[5],i[6]) == 0 : a = 0 if i[5] == '/' : if i[6] == 0 : a = 0 else : c1 = calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[-2],i[-1]) c2 = calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) c3 = calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) c4 = calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) c5 = calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) if c1 == 24 : a += 1 print('( (',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=',24) break elif c2 == 24 : a += 1 print('(',i[0],i[1],'(',i[2],i[3],i[4],') )',i[5],i[6],'=',24) break elif c3 == 24 : a += 1 print(i[0],i[1],'( (',i[2],i[3],i[4],')',i[5],i[6],')','=',24) break elif c4 == 24 : a += 1 print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],') )','=',24) break elif c5 == 24 : a += 1 print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=',24) break if a == 0 : print('No Solutions')
# 6330549721 (20) 372 (2021-02-20 23:48) def calc(num1,op,num2): if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif num2==0: r=math.inf else: r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x=nums.split() b=int(x[0]) c=int(x[1]) d=int(x[2]) e=int(x[3]) #cases = calc(b,op1,c,op2,d,op3,e) cases = generate_all_combinations( [b,c,d,e], '+-*/' ) for i in cases: if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6])==24: print('( (',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'= 24') break elif calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6])==24: print('(',i[0],i[1],'(',i[2],i[3],i[4],') )',i[5],i[6],'= 24') break elif calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6]))==24: print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],') = 24') break elif calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6]))==24: print(i[0],i[1],'( (',i[2],i[3],i[4],')',i[5],i[6],') = 24') break elif calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6])))==24: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],') ) = 24') break if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6])!=24\ and calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6])!=24\ and calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6]))!=24\ and calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6]))!=24\ and calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6])))!=24: print('No Solutions') # if i==24: # print(i,'= 24') # else: # print('No solutions')
# 6330550221 (20) 373 (2021-02-21 12:52) def calc(a, operation, b): if operation == '+': r = a+b elif operation == '-': r = a-b elif operation == '*': r = a*b elif operation == '/': if b != 0: r = a/b else: r=0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') u = nums.split() h = list(nums) k = [int(u[0]),int(u[1]),int(u[2]),int(u[3])] cases = generate_all_combinations( k, '+-*/' ) i=0 while i <=len(cases)-1: a = cases[i] b = [int(a[0]),int(a[2]),int(a[4]),int(a[6])] c = [a[1],a[3],a[5]] def calc(a, operation, b): if operation == '+': r = a+b elif operation == '-': r = a-b elif operation == '*': r = a*b elif operation == '/': if b != 0: r = a/b else: r=0 return r g = calc(b[0], c[0], b[1]) e = calc(g, c[1], b[2]) t = calc(e, c[2], b[3]) if t == 24: d = '( ( '+str(b[0])+' '+c[0]+' '+str(b[1])+' ) '+c[1]+' '+str(b[2])+' ) '+c[2]+' '+str(b[3]) print(d+' = 24') break if t != 24: g1 = calc(b[1], c[1], b[2]) e1 = calc(b[0], c[0], g1) t1 = calc(e1, c[2], b[3]) if t1 == 24: d = '( '+str(b[0])+' '+c[0]+' ( '+str(b[1])+' '+c[1]+' '+str(b[2])+' ) ) '+c[2]+' '+str(b[3]) print(d+' = 24') break if t1 != 24: g2 = calc(b[0], c[0], b[1]) e2 = calc(b[2], c[2], b[3]) t2 = calc(g2, c[1], e2) if t2 == 24: d = '( '+str(b[0])+' '+c[0]+' '+str(b[1])+' ) '+c[1]+' ( '+str(b[2])+' '+c[2]+' '+str(b[3])+' )' print(d+' = 24') break if t2 != 24: g3 = calc(b[1], c[1], b[2]) e3 = calc(g3, c[2], b[3]) t3 = calc(b[0], c[0], e3) if t3 == 24: d = str(b[0])+' '+c[0]+' ( ( '+str(b[1])+' '+c[1]+' '+str(b[2])+' ) '+c[2]+' '+str(b[3])+' )' print(d+' = 24') break if t3 != 24: g4 = calc(b[2], c[2], b[3]) e4 = calc(b[1], c[1], g4) t4 = calc(b[0], c[0], e4) if t4 == 24: d = str(b[0])+' '+c[0]+' ( '+str(b[1])+' '+c[1]+' ( '+str(b[2])+' '+c[2]+' '+str(b[3])+' ) )' print(d+' = 24') break i+=1 if t != 24 and t1 != 24 and t2 != 24 and t3 != 24 and t4 != 24: print('No Solutions')
# 6330551921 (18) 374 (2021-02-19 19:34) def calc(num1,op,num2): if num1 == 'dividezero' or num2 == 'dividezero': r = 'dividezero' elif op == '+': r = float(num1) + float(num2) elif op =='-': r = float(num1) - float(num2) elif op =='*': r = float(num1) * float(num2) elif op =='/': if float(num2) < 1: r='dividezero' else: r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() num_cal,op_cal = '','' operator = ['+','-','*','/'] exit = 0 cases = generate_all_combinations(nums, operator ) for count in range(len(cases)): for i in cases[count]: if i in operator: op_cal+=i else: num_cal+=i+" " num_cal = num_cal.split() for k in range(len(op_cal)): if k == 0: left = calc(num_cal[k],op_cal[k],num_cal[k+1]) left1 = calc(left,op_cal[k+1],num_cal[k+2]) ans1 = calc(left1,op_cal[k+2],num_cal[k+3]) if ans1 == 24 : print('(','(',num_cal[0],op_cal[0],num_cal[1],')',op_cal[1],num_cal[2],')',op_cal[2],num_cal[3],'=',int(ans1) ) exit = 1 break left3 = calc(num_cal[k+2],op_cal[k+2],num_cal[k+3]) ans3 = calc(left,op_cal[k+1],left3) if ans3 == 24: print('(',num_cal[0],op_cal[0],num_cal[1],')',op_cal[1],'(',num_cal[2],op_cal[2],num_cal[3],')','=',int(ans3) ) exit = 1 break if k ==1 : mid = calc(num_cal[k],op_cal[k],num_cal[k+1]) mid1 = calc(num_cal[0],op_cal[0],mid) ans2 = calc(mid1,op_cal[2],num_cal[3]) if ans2 == 24: print('(',num_cal[0],op_cal[0],'(',num_cal[1],op_cal[1],num_cal[2],')',')',op_cal[2],num_cal[3],'=',int(ans2) ) exit = 1 break mid4 = calc(mid,op_cal[2],num_cal[3]) ans4 = calc(num_cal[0],op_cal[0],mid4) if ans4 == 24: print(num_cal[0],op_cal[0],'(','(',num_cal[1],op_cal[1],num_cal[2],')',op_cal[2],num_cal[3],')','=',int(ans4) ) exit = 1 break if k== 2 : right = calc(num_cal[k],op_cal[k],num_cal[k+1]) right5 = calc(num_cal[1],op_cal[1],right) ans5= calc(num_cal[0],op_cal[0],right5) if ans5 == 24: print(num_cal[0],op_cal[0],'(',num_cal[1],op_cal[1],'(',num_cal[2],op_cal[2],num_cal[3],')',')','=',int(ans5) ) exit = 1 break if exit == 1: break if count == len(cases)-1 : print('No Solutions') num_cal,op_cal = '',''
# 6330552521 (20) 375 (2021-02-22 15:15) nums = input('Enter 4 integers: ') num_list = nums.split(' ') cases = generate_all_combinations( num_list, '+-*/' ) sub_form = [] for e in range(len(cases)): sub_list = cases[e] form1 = '( ( {0} {1} {2} ) {3} {4} ) {5} {6}'.format( sub_list[0], sub_list[1], sub_list[2], sub_list[3], sub_list[4], sub_list[5], sub_list[6]) sub_form.append(form1) form2 = '( {0} {1} ( {2} {3} {4} ) ) {5} {6}'.format( sub_list[0], sub_list[1], sub_list[2], sub_list[3], sub_list[4], sub_list[5], sub_list[6]) sub_form.append(form2) form3 = '( {0} {1} {2} ) {3} ( {4} {5} {6} )'.format( sub_list[0], sub_list[1], sub_list[2], sub_list[3], sub_list[4], sub_list[5], sub_list[6]) sub_form.append(form3) form4 = '{0} {1} ( ( {2} {3} {4} ) {5} {6} )'.format( sub_list[0], sub_list[1], sub_list[2], sub_list[3], sub_list[4], sub_list[5], sub_list[6]) sub_form.append(form4) form5 = '{0} {1} ( {2} {3} ( {4} {5} {6} ) )'.format( sub_list[0], sub_list[1], sub_list[2], sub_list[3], sub_list[4], sub_list[5], sub_list[6]) sub_form.append(form5) c = True for i in range(len(sub_form)): try: if eval(sub_form[i]) == 24: c = False print(sub_form[i], '=', '24') break except ZeroDivisionError: continue if c == True: print('No Solutions')
# 6330553121 (20) 376 (2021-02-22 22:25) def calc(num1, op, num2): if op == '+': r = num1+num2 elif op == '-': r = num1-num2 elif op == '*': r = num1*num2 else : r = num1/num2 return r def test(b,c): if b == '/' and c == 0: p = 'inv' else : p = 'val' return p #--------------------------------------------------------- nums = input('Enter 4 integers: ') x = nums.split() c = 0 for e in range(4): x[e] = int(x[e]) cases = generate_all_combinations( x, '+-*/' ) for l in cases : if test(l[1],l[2]) == 'val': #1 q1 = calc(l[0],l[1],l[2]) if test(l[3],l[4]) == 'val': q2 = calc(q1,l[3],l[4]) if test(l[5],l[6]) == 'val': q3 = calc(q2,l[5],l[6]) if q3 == 24 : #print ('***1') print ('( (',l[0],l[1],l[2],')',l[3],l[4],')',l[5],l[6],'=',24) c = 1 break if test(l[3],l[4]) == 'val': #2 q1 = calc(l[2],l[3],l[4]) if test(l[1],q1) == 'val': q2 = calc(l[0],l[1],q1) if test(l[5],l[6]) == 'val': q3 = calc(q2,l[5],l[6]) if q3 == 24 : #print ('***2') print ('(',l[0],l[1],'(',l[2],l[3],l[4],') )',l[5],l[6],'=',24) c = 1 break if test(l[1],l[2]) == 'val' : #3 q1 = calc(l[0],l[1],l[2]) if test(l[5],l[6]) == 'val': q2 = calc(l[4],l[5],l[6]) if test(l[3],q2) == 'val' : q3 = calc(q1,l[3],q2) if q3 == 24 : #print('***3') print ('(',l[0],l[1],l[2],')',l[3],'(',l[4],l[5],l[6],')','=',24) c = 1 break if test(l[3],l[4]) == 'val': #4 q1 = calc(l[2],l[3],l[4]) if test(l[5],l[6]) == 'val': q2 = calc(q1,l[5],l[6]) if test(l[1],q2) == 'val': q3 = calc(l[0],l[1],q2) if q3 == 24 : #print('***4') print(l[0],l[1],'( (',l[2],l[3],l[4],')',l[5],l[6],')','=',24) c = 1 break if test(l[5],l[6]) == 'val': q1 = calc(l[4],l[5],l[6]) if test(l[3],q1) == 'val': q2 = calc(l[2],l[3],q1) if test(l[1],q2) == 'val': q3 = calc(l[0],l[1],q2) if q3 == 24 : #print('***5') print(l[0],l[1],'(',l[2],l[3],'(',l[4],l[5],l[6],') )','=',24) c = 1 break if c == 0: print('No Solutions')
# 6330554821 (20) 377 (2021-02-21 11:01) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 != 0 : r = num1 / num2 else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums1 = nums.split() for i in range(len(nums1)): nums1[i] = int(nums1[i]) cases = generate_all_combinations(nums1, '+-*/') q = 0 while 0<=q<len(cases): c = cases[q] a1 = calc(c[0],c[1],c[2]) a2 = calc(a1,c[3],c[4]) A = calc(a2,c[5],c[6]) if A == 24: print('( ( '+str(c[0])+' '+c[1]+' '+str(c[2])+' ) '+c[3]+' '+str(c[4])+' ) '+\ c[5]+' '+str(c[6])+' = 24') break b1 = calc(c[2],c[3],c[4]) b2 = calc(c[0],c[1],b1) B = calc(b2,c[5],c[6]) if B == 24: print('( '+str(c[0])+' '+c[1]+' ( '+str(c[2])+' '+c[3]+' '+str(c[4])+' ) ) '+\ c[5]+' '+str(c[6])+' = 24') break c2 = calc(c[4],c[5],c[6]) C = calc(a1,c[3],c2) if C == 24: print('( '+str(c[0])+' '+c[1]+' '+str(c[2])+' ) '+c[3]+' ( '+str(c[4])+' '+\ c[5]+' '+str(c[6])+' ) = 24') break d1 = calc(b1,c[5],c[6]) D = calc(c[0],c[1],d1) if D == 24: print(str(c[0])+' '+c[1]+' ( ( '+str(c[2])+' '+c[3]+' '+str(c[4])+' ) '+\ c[5]+' '+str(c[6])+' ) = 24') break e1 = calc(c[2],c[3],c2) E = calc(c[0],c[1],e1) if E == 24: print(str(c[0])+' '+c[1]+' ( '+str(c[2])+' '+c[3]+' ( '+str(c[4])+' '+c[5]+\ ' '+str(c[6])+' ) ) = 24') break q += 1 if q == len(cases) and A != 24 and B != 24 and C!=24 and D!=24: print('No Solutions')
# 6330555421 (14) 378 (2021-02-22 22:05) def calc( num1, operation, num2 ) : if operation == '+' : r = int(num1) + int(num2) elif operation == '-' : r = int(num1) - int(num2) elif operation == '*' : r = int(num1) * int(num2) elif operation == '/' : if int(num2) != 0 : r = int(num1) / int(num2) else : r = 1 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations(num_list, '+-*/') for i in range(len(cases)) : a = cases[i] cal1 = calc(calc(calc(int(a[0]),a[1],int(a[2])),a[3],int(a[4])),a[5],int(a[6])) cal2 = calc(calc(int(a[0]),a[1],calc(int(a[2]),a[3],int(a[4]))),a[5],int(a[6])) cal3 = calc(calc(int(a[0]),a[1],int(a[2])),a[3],calc(int(a[4]),a[5],int(a[6]))) cal4 = calc(int(a[0]),a[1],calc(calc(int(a[2]),a[3],int(a[4])),a[5],int(a[6]))) cal5 = calc(int(a[0]),a[1],calc(int(a[2]),a[3],calc(int(a[4]),a[5],int(a[6])))) if cal1==24 or cal2==24 or cal3==24 or cal4==24 or cal5==24 : if cal1 == 24 : print('( (',a[0],a[1],a[2],')',a[3],a[4],')',a[5],a[6],'= 24') break elif cal2 == 24 : print('(',a[0],a[1],'(',a[2],a[3],a[4],')',')',a[5],a[6],'= 24') break elif cal3 == 24 : print('(',a[0],a[1],a[2],')',a[3],'(',a[4],a[5],a[6],')','= 24') break elif cal4 == 24 : print(a[0],a[1],'(','(',a[2],a[3],a[4],')',a[5],a[6],')','= 24') break elif cal5 == 24 : print(a[0],a[1],'(',a[2],a[3],'(',a[4],a[5],a[6],')',')','= 24') break if not(cal1==24 or cal2==24 or cal3==24 or cal4==24 or cal5==24) : print('No Solutions')
# 6330556021 (20) 379 (2021-02-20 19:05) def calc(num1, op, num2): if op == "+": r = num1 + num2 elif op == "-": r = num1 - num2 elif op == "*": r = num1 * num2 elif op == "/": if num2 == 0: r = 9999999999111111090105180011111119999994357034570134523457134523463467586352453213675341256986572346 else: r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() n = 0 cases = generate_all_combinations(nums, '+-*/' ) while n < len(cases): x = cases[n] n1,n2,n3,n4 = int(x[0]),int(x[2]),int(x[4]),int(x[6]) sum = calc(calc(calc(n1, x[1], n2), x[3], n3), x[5], n4) if sum == 24: show = "( ( "+str(n1)+" "+x[1]+" "+str(n2)+" ) "+x[3]+" "+str(n3)+" ) "+x[5]+" "+str(n4) break sum = calc(calc(n1, x[1], calc(n2, x[3], n3)), x[5], n4) if sum == 24: show = "( "+str(n1)+" "+x[1]+" ( "+str(n2)+" "+x[3]+" "+str(n3)+" ) ) "+x[5]+" "+str(n4) break sum = calc(calc(n1, x[1], n2), x[3], calc(n3, x[5], n4)) if sum == 24: show = "( "+str(n1)+" "+x[1]+" "+str(n2)+" ) "+x[3]+" ( "+str(n3)+" "+x[5]+" "+str(n4)+" )" break sum = calc(n1, x[1], calc(calc(n2, x[3], n3), x[5], n4)) if sum == 24: show = str(n1)+" "+x[1]+" ( ( "+str(n2)+" "+x[3]+" "+str(n3)+" ) "+x[5]+" "+str(n4)+" )" break sum = calc(n1, x[1], calc(n2, x[3], calc(n3, x[5], n4))) if sum == 24: show = str(n1)+" "+x[1]+" ( "+str(n2)+" "+x[3]+" ( "+str(n3)+" "+x[5]+" "+str(n4)+" ) )" break n += 1 if sum == 24: print(show+" = 24") if n == len(cases) and sum != 24: print("No Solutions")
# 6330557721 (12) 380 (2021-02-21 20:54) def calc(num1, op, num2): if op == '+': r = int(num1) + int(num2) elif op == '-': r = int(num1) - int(num2) elif op == '*': r = int(num1) * int(num2) elif op == "/" and int(num2) == 0 : r = 999999999999 elif op == "/" and int(num2) != 0 : r = int(num1) / int(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = nums.split() cases = generate_all_combinations( num, '+-*/' ) for i in range(len(cases)): c = cases[i] lek = [c[0],c[2],c[4],c[6]] ope = [c[1],c[3],c[5]] ca1 = calc(c[0],c[1],c[2]) ca2 = calc(ca1,c[3],c[4]) ca3 = calc(ca2,c[5],c[6]) if ca3 ==24: print("( "+"( "+str(c[0])+" "+c[1]+" "+str(c[2])+" "+") "+c[3]+" "+str(c[4])+" "+") "+c[5]+" "+str(c[6])+" "+"= "+"24") break ca1 = calc(c[2],c[3],c[4]) ca2 = calc(c[0],c[1],ca1) ca3 = calc(ca2,c[5],c[6]) if ca3 ==24: print("( "+str(c[0])+" "+c[1]+" "+"( "+str(c[2])+" "+c[3]+" "+str(c[4])+" "+") "+") "+c[5]+" "+str(c[6])+" "+"= "+"24") break ca1 = calc(c[0],c[1],c[2]) ca2 = calc(c[4],c[5],c[6]) ca3 = calc(ca1,c[3],ca2) if ca3 ==24: print("( "+str(c[0])+" "+c[1]+" "+str(c[2])+" "+") "+c[3]+" "+"( "+str(c[4])+" "+c[5]+" "+str(c[6])+" "+") "+"= "+"24") break ca1 = calc(c[2],c[3],c[4]) ca2 = calc(ca1,c[5],c[6]) ca4 = calc(c[0],c[1],ca2) if ca3 == 24: print(str(c[0])+" "+c[1]+" "+"( "+"( "+str(c[2])+" "+c[3]+" "+str(c[4])+" "+") "+c[5]+" "+str(c[6])+" "+") "+"= "+"24") break ca1 = calc(c[4],c[5],c[6]) ca2 = calc(c[2],c[3],ca1) ca3 = calc(c[0],c[1],ca2) if ca3 ==24: print(str(c[0])+" "+c[1]+" "+"( "+str(c[2])+" "+c[3]+" "+"( "+str(c[4])+" "+c[5]+" "+str(c[6])+" "+") "+") "+"= "+"24") break if ca3 != 24: print("No Solutions")
# 6330558321 (12) 381 (2021-02-21 18:49) def add_parentheses(combi, pattern): ll, lr = PAT_TO_INDS[pattern] expr = ['']*11 for l in ll: expr[l] = '(' for r in lr: expr[r] = ')' for i in range(11): expr[i] = combi.pop(0) if not expr[i] else expr[i] return expr def try_eval(case): expr = ' '.join(case) res = 0 try: res = eval(expr) except: pass if res == 24: print(expr, "= 24") return True else: return False #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split(' ') cases = generate_all_combinations(nums, '+-*/') for i, case in enumerate(cases): case = add_parentheses(case, i%5) if try_eval(case): exit() print("No Solutions")
# 6330559021 (13.4) 382 (2021-02-21 20:09) def ca(x, op , y) : if op == '+' : r = int(x) + int(y) elif op == '-' : r = int(x) - int(y) elif op == '*' : r = int(x) * int(y) elif op == "/" and int(y) == 0 : r = 122344566 elif op == "/" and int(y) != 0 : r = int(x) / int(y) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations(nums, '+-*/' ) for k in cases : x = ca(ca(ca(k[0], k[1], k[2]), k[3], k[4]), k[5], k[6]) y = ca(ca(k[0], k[1], ca(k[2], k[3], k[4])), k[5], k[6]) z = ca(ca(k[0], k[1], k[2]), k[3] , ca(k[4], k[5], k[6])) g = ca(k[0], k[1], ca(ca(k[2], k[3], k[4]), k[5], k[6])) m = ca(k[0], k[1], ca(k[2], k[3], ca(k[4], k[5], k[6]))) if int(x) == 24 : break elif int(y) == 24 : break elif int(z) == 24 : break elif int(g) == 24 : break elif int(m) == 24 : break if x == 24 : print("("+" "+"("+" "+k[0]+" "+k[1]+" "+k[2]+" "+")"+" "+k[3]+" "+k[4]+" "+")"+k[5]+" "+k[6]+" "+"= 24") elif y == 24 : print("("+" "+k[0]+" "+k[1]+" "+"("+" "+k[2]+" "+k[3]+" "+k[4]+" "+")"+" "+")"+" "+k[5]+" "+k[6]+" "+"= 24") elif z == 24 : print("("+" "+k[0]+" "+k[1]+" "+k[2]+" "+")"+" "+k[3]+" "+"("+" "+k[4]+" "+k[5]+" "+k[6]+" "+")"+" "+"= 24") elif g == 24 : print(k[0]+" "+k[1]+" "+"("+" "+"("+" "+k[2]+" "+k[3]+" "+k[4]+" "+")"+k[5]+" "+k[6]+" "+")"+" "+"= 24") elif m == 24 : print(k[0]+" "+k[1]+" "+"("+" "+k[2]+" "+k[3]+" "+"("+" "+k[4]+" "+k[5]+" "+k[6]+" "+")"+" "+")"+" "+"= 24") else : print("No Solutions")
# 6330560521 (20) 383 (2021-02-21 12:12) def calc(x,op,y): if op == '+' : r = x+y elif op == '-' : r = x-y elif op == '*' : r = x*y elif op == '/' : if y == 0 : r = 0 else : r = x/y return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() num_list[0] = int(num_list[0]) num_list[1] = int(num_list[1]) num_list[2] = int(num_list[2]) num_list[3] = int(num_list[3]) cases = generate_all_combinations(num_list,'+-*/') for each_cases in cases : num1 = int(each_cases[0]) num2 = int(each_cases[2]) num3 = int(each_cases[4]) num4 = int(each_cases[6]) op1 = each_cases[1] op2 = each_cases[3] op3 = each_cases[5] #ลำดับการคำนวณ1 sum_ = 0 r = calc(num1,op1,num2) s = calc(r,op2,num3) sum_ = calc(s,op3,num4) if sum_ == 24 : print('('+' '+'('+' '+str(num1)+' '+op1+' '+str(num2)+' '+')'+' '\ +op2+' '+str(num3)+' '+')'+' '+op3+' '+str(num4)+' '+'='+' '+'24') break #ลำดับการคำนวณ2 sum_ = 0 r = calc(num2,op2,num3) s = calc(num1,op1,r) sum_= calc(s,op3,num4) if sum_ == 24 : print('('+' '+str(num1)+' '+op1+' '+'('+' '+str(num2)+' '+op2+' '+' '\ +str(num3)+' '+')'+' '+')'+' '+op3+' '+str(num4)+' '+'='+' '+'24') break #ลำดับการคำนวณ3 sum_ = 0 r = calc(num1,op1,num2) s = calc(num3,op3,num4) sum_ = calc(r,op2,s) if sum_ == 24 : print('('+' '+str(num1)+' '+op1+' '+str(num2)+' '+')'+' '+op2+' '\ '('+' '+str(num3)+' '+op3+' '+str(num4)+' '+')'+' '+'='+' '+'24') break #ลำดับการคำนวณ4 sum_ = 0 r = calc(num2,op2,num3) s = calc(r,op3,num4) sum_ = calc(num1,op1,s) if sum_ == 24 : print(str(num1)+' '+op1+' '+'('+' '+'('+' '+str(num2)+' '+op2+' '\ +str(num3)+' '+')'+' '+op3+' '+str(num4)+' '+')'+' '+'='+' '+'24') break #ลำดับการคำนวณ5 sum_ = 0 r = calc(num3,op3,num4) s = calc(num2,op2,r) sum_ = calc(num1,op1,s) if sum_ == 24 : print(str(num1)+' '+op1+' '+'('+' '+str(num2)+' '+op2+' '+'('+' '\ +str(num3)+' '+op3+' '+str(num4)+' '+')'+' '+')'+' '+'='+' '+'24') break if sum_ != 24 : print('No Solutions')
# 6330561121 (20) 384 (2021-02-18 10:36) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/' and num2 == 0: r = 9999 elif op == '/' : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() i = 0 cases = generate_all_combinations( nums, '+-*/' ) while i < len(cases) : y = cases[i] y[0] = int(y[0]) y[2] = int(y[2]) y[4] = int(y[4]) y[6] = int(y[6]) y11 = calc(y[0],y[1],y[2]) y12 = calc(y11,y[3],y[4]) y13 = calc(y12,y[5],y[6]) y21 = calc(y[2],y[3],y[4]) y22 = calc(y[0],y[1],y21) y23 = calc(y22,y[5],y[6]) y31 = calc(y[0],y[1],y[2]) y32 = calc(y[4],y[5],y[6]) y33 = calc(y31,y[3],y32) y41 = calc(y[2],y[3],y[4]) y42 = calc(y41,y[5],y[6]) y43 = calc(y[0],y[1],y42) y51 = calc(y[4],y[5],y[6]) y52 = calc(y[2],y[3],y51) y53 = calc(y[0],y[1],y52) if y13 == 24 : print("(","(",y[0],y[1],y[2],")",y[3],y[4],")",y[5],y[6],"=","24") break elif y23 == 24 : print("(",y[0],y[1],"(",y[2],y[3],y[4],")",")",y[5],y[6],"=","24") break elif y33 == 24 : print("(",y[0],y[1],y[2],")",y[3],"(",y[4],y[5],y[6],")","=","24") break elif y43 == 24 : print(y[0],y[1],"(","(",y[2],y[3],y[4],")",y[5],y[6],")","=","24") break elif y53 == 24 : print(y[0],y[1],"(",y[2],y[3],"(",y[4],y[5],y[6],")",")","=","24") break else : i += 1 if y13 != 24 and y23 != 24 and y33 != 24 and y43 != 24 and y53 != 24 : print ("No Solutions")
# 6330562821 (20) 385 (2021-02-19 22:06) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 != 0 : r = num1 / num2 else : r = 1e10 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations(nums, '+-*/' ) solution = False for i in range (len(cases)): for j in range(1,6): if j == 1: result = calc(int(cases[i][0]), cases[i][1], int(cases[i][2])) result = calc(result, cases[i][3], int(cases[i][4])) result = calc(result, cases[i][5], int(cases[i][6])) ans = ['( ('] + cases[i][0:3] + [')'] + cases[i][3:5] + [')'] + cases[i][-2::1] elif j == 2: result = calc(int(cases[i][2]), cases[i][3], int(cases[i][4])) result = calc(int(cases[i][0]), cases[i][1], result) result = calc(result, cases[i][5], int(cases[i][6])) ans = ['('] + cases[i][0:2] + ['('] + cases[i][2:5] + [') )'] + cases[i][-2::1] elif j == 3: result1 = calc(int(cases[i][0]), cases[i][1], int(cases[i][2])) result2 = calc(int(cases[i][4]), cases[i][5], int(cases[i][6])) result = calc(result1, cases[i][3], result2) ans = ['('] + cases[i][0:3] + [')'] + [cases[i][3]] + ['('] + cases[i][4::]+ [')'] elif j == 4: result = calc(int(cases[i][2]), cases[i][3], int(cases[i][4])) result = calc(result, cases[i][5], int(cases[i][6])) result = calc(int(cases[i][0]), cases[i][1], result) ans = cases[i][0:2] + ['( ('] + cases[i][2:5] + [')'] + cases[i][-2::1]+ [')'] elif j == 5: result = calc(int(cases[i][4]), cases[i][5], int(cases[i][6])) result = calc(int(cases[i][2]), cases[i][3], result) result = calc(int(cases[i][0]), cases[i][1], result) ans = cases[i][0:2] + ['('] + cases[i][2:4] + ['('] + cases[i][4:] + [') )'] if result == 24 : solution = True break ans = []*11 if solution == True : break if solution == True : ans = (' ').join(ans) print(ans + ' = 24') solution = True else : print('No Solutions')
# 6330563421 (20) 386 (2021-02-21 23:06) def calc(n1,op,n2): if op=='+': r=n1+n2 elif op=='-': r=n1-n2 elif op=='*': r=n1*n2 elif op=='/' and n2!=0: r=n1/n2 else: r=math.e-math.pi return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list=[] for e in nums.split(): num_list+=[int(e)] operators='+-*/' cases = generate_all_combinations( num_list, operators ) check=False for n1,op1,n2,op2,n3,op3,n4 in cases: if calc(calc(calc(n1,op1,n2),op2,n3),op3,n4)==24: print('( ( '+str(n1)+' '+op1+' '+str(n2)+' ) '+op2+' '+str(n3)+' ) '+op3+' '+str(n4)+' = 24') check=True break if calc(calc(n1,op1,calc(n2,op2,n3)),op3,n4)==24: print('( '+str(n1)+' '+op1+' ( '+str(n2)+' '+op2+' '+str(n3)+' ) ) '+op3+' '+str(n4)+' = 24') check=True break if calc(calc(n1,op1,n2),op2,calc(n3,op3,n4))==24: print('( '+str(n1)+' '+op1+' '+str(n2)+' ) '+op2+' ( '+str(n3)+' '+op3+' '+str(n4)+' ) = 24') check=True break if calc(n1,op1,calc(calc(n2,op2,n3),op3,n4))==24: print(str(n1)+' '+op1+' ( ( '+str(n2)+' '+op2+' '+str(n3)+' ) '+op3+' '+str(n4)+' ) = 24') check=True break if calc(n1,op1,calc(n2,op2,calc(n3,op3,n4)))==24: print(str(n1)+' '+op1+' ( '+str(n2)+' '+op2+' ( '+str(n3)+' '+op3+' '+str(n4)+' ) ) = 24') check=True break if check==False: print('No Solutions')
# 6330564021 (20) 387 (2021-02-19 22:38) def calc(num1, op, num2): if op == '+': if num1 == "" or num2 == "": r = "" else: r = num1 + num2 elif op == '-': if num1 == "" or num2 == "": r = "" else: r = num1 - num2 elif op == '*': if num1 == "" or num2 == "": r = "" else: r = num1 * num2 elif op == '/': if num1 == "" or num2 == "": r = "" elif num2 != 0: r = num1 / num2 elif num2 == 0: r = "" return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() num1 = int(nums[0]) num2 = int(nums[1]) num3 = int(nums[2]) num4 = int(nums[3]) k = 0 cases = generate_all_combinations( [num1,num2,num3,num4], '+-*/' ) for c in cases: if calc(calc(calc(c[0],c[1],c[2]),c[3],c[4]),c[5],c[6]) == 24: print("( (",c[0],c[1],c[2],")",c[3],c[4],")",c[5],c[6],"= 24") k += 1 break elif calc(calc(c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) == 24: print("(",c[0],c[1],"(",c[2],c[3],c[4],") )",c[5],c[6],"= 24") k += 1 break elif calc(calc(c[0],c[1],c[2]),c[3],calc(c[4],c[5],c[6])) == 24: print("(",c[0],c[1],c[2],")",c[3],"(",c[4],c[5],c[6],")","= 24") k += 1 break elif calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) == 24: print(c[0],c[1],"( (",c[2],c[3],c[4],")",c[5],c[6],")","= 24") k += 1 break elif calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) == 24: print(c[0],c[1],"(",c[2],c[3],"(",c[4],c[5],c[6],") )","= 24") k += 1 break if k == 0: print("No Solutions")
# 6330565721 (20) 388 (2021-02-22 20:16) def calc(num1,op,num2): num1=float(num1) num2=float(num2) if op == '+': o=num1+num2 elif op == '-': o=num1-num2 elif op == '*': o=num1*num2 elif op == '/' and num2 !=0: o=num1/num2 else: return False return o #--------------------------------------------------------- nums = input('Enter 4 integers: ') w = nums.split() cases = generate_all_combinations(w,'+-*/') for x in cases: #operation = y y1 = x[1] y2 = x[3] y3 = x[5] #number = z z1 = x[0] z2 = x[2] z3 = x[4] z4 = x[6] # Pattern a = calc(calc(calc(z1,y1,z2),y2,z3),y3,z4) #Pattern 1 b = calc(calc(z1,y1,calc(z2,y2,z3)),y3,z4) #Pattern 2 c = calc(calc(z1,y1,z2),y2,calc(z3,y3,z4)) #Pattern 3 d = calc(z1,y1,calc(calc(z2,y2,z3),y3,z4)) #Pattern 4 e = calc(z1,y1,calc(z2,y2,calc(z3,y3,z4))) #Pattern 5 if a ==24: print('( '+'( '+z1+' '+y1+' '+z2+' ) '+y2+' '+z3+' ) '+y3+' '+z4+' = 24') break elif b ==24: print('( '+z1+' '+y1+' ( '+z2+' '+y2+' '+z3+' ) '+') '+y3+' '+z4+' = 24') break elif c ==24: print('( '+z1+' '+y1+' '+z2+' ) '+y2+' ( '+z3+' '+y3+' '+z4+' )'+' = 24') break elif d ==24: print(z1+' '+y1+' ( '+'( '+z2+' '+y2+' '+z3+' ) '+y3+' '+z4+' )'+' = 24') break elif e ==24: print(z1+' '+y1+' ( '+z2+' '+y2+' ( '+z3+' '+y3+' '+z4+' ) '+')'+' = 24') break else : print("No Solutions")
# 6330566321 (20) 389 (2021-02-21 00:36) def calc(num1,op,num2): num1=float(num1) num2=float(num2) if op == '+' : r = num1+num2 elif op == '-' : r = num1-num2 elif op == '*' : r = num1*num2 elif op == '/' : if num2 == 0 : return float('inf') r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = nums.split() cases = generate_all_combinations( num_list, '+-*/' ) ans_list = [] for case in cases : a1 = calc(calc(calc(case[0],case[1],case[2]),case[3],case[4]),case[5],case[6]) a2 = calc(calc(case[0],case[1],calc(case[2],case[3],case[4])),case[5],case[6]) a3 = calc(calc(case[0],case[1],case[2]),case[3],calc(case[4],case[5],case[6])) a4 = calc(case[0],case[1],calc(calc(case[2],case[3],case[4]),case[5],case[6])) a5 = calc(case[0],case[1],calc(case[2],case[3],calc(case[4],case[5],case[6]))) if a1 == 24: ans_list.append('( ('+' '+case[0]+' '+case[1]+' '+case[2]+' ) '+case[3]+' '+case[4]+' ) '+case[5]+' '+case[6]+' = 24') if a2 == 24: ans_list.append('( '+case[0]+' '+case[1]+' ( '+case[2]+' '+case[3]+' '+case[4]+' ) ) '+case[5]+' '+case[6]+' = 24') if a3 == 24: ans_list.append('( '+case[0]+' '+case[1]+' '+case[2]+' ) '+case[3]+' ( '+case[4]+' '+case[5]+' '+case[6]+' )'+' = 24') if a4 == 24: ans_list.append(case[0]+' '+case[1]+' ( ( '+case[2]+' '+case[3]+' '+case[4]+' ) '+case[5]+' '+case[6]+' )'+' = 24') if a5 == 24: ans_list.append(case[0]+' '+case[1]+' ( '+case[2]+' '+case[3]+' ( '+case[4]+' '+case[5]+' '+case[6]+' ) )'+' = 24') if len(ans_list) > 0 : print(ans_list[0]) else : print('No','Solutions')
# 6330567021 (20) 390 (2021-02-22 12:18) def cal(num1, op, num2): if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if float(num2) == 0: r = 10**10 else: r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... ... nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) ll = [] for s in cases: for i in range(3): a = cal(s[2*i],s[2*i +1],s[2*i +2]) if i == 0: b = cal(a,s[3],s[4]) c = cal(s[4],s[5],s[6]) if cal(a,s[3],c) == 24: pp = '( '+s[2*i]+ ' ' + s[2*i +1]+' '+s[2*i +2] + ' ) ' + s[3] + ' ( ' + s[4] + ' ' +s[5] + ' ' +s[6]+' )' ll.append(pp) break elif cal(b,s[5],s[6]) == 24: pp = '( ( '+s[2*i]+' '+s[2*i +1]+' '+s[2*i +2]+' ) '+s[3]+' '+s[4]+' ) '+s[5]+' '+s[6] ll.append(pp) break elif i == 1: b = cal(s[0],s[1],a) c = cal(a,s[5],s[6]) if cal(s[0],s[1],c) == 24: pp =s[0]+' '+s[1]+' ( ( '+s[2*i]+ ' ' + s[2*i +1] + ' ' +s[2*i +2]+' ) '+s[5] + ' '+s[6]+' )' ll.append(pp) break elif cal(b,s[5],s[6]) == 24: pp = '( '+s[0]+' '+s[1]+' ( '+s[2*i]+ ' ' + s[2*i +1] + ' ' +s[2*i +2]+' ) ) '+s[5]+' '+s[6] ll.append(pp) break elif i == 2: b = cal(s[0],s[1],s[2]) c = cal(s[2],s[3],a) if cal(b,s[3],a) == 24: pp ='( '+s[0]+' '+s[1]+' '+s[2]+" ) " + s[3] + ' ( '+s[2*i]+ ' ' + s[2*i +1] + ' ' +s[2*i +2]+' )' ll.append(pp) break elif cal(s[0],s[1],c) == 24: pp =s[0] +' '+ s[1] + ' ( '+s[2]+' '+s[3]+ ' ( ' + s[2*i]+ ' ' + s[2*i +1] + ' ' +s[2*i +2] + ' ) )' ll.append(pp) break if len(ll) == 0: print('No Solutions') else: print(str(ll[0]) + ' = 24')
# 6330568621 (19.6) 391 (2021-02-20 19:07) def calc(num1, op, num2): r = 0 if op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if float(num2) != 0: r = float(num1)/float(num2) return r def check24(p): if calc(calc(calc(p[0],p[1],p[2]),p[3],p[4]), p[5], p[6]) == 24: return '1' elif calc(calc(p[0],p[1],calc(p[2],p[3],p[4])) , p[5], p[6]) == 24: return '2' elif calc(calc(p[0],p[1],p[2]) ,p[3], calc(p[4],p[5],p[6])) == 24: return '3' elif calc(p[0],p[1],calc(calc(p[2],p[3],p[4]),p[5],p[6])) == 24: return '4' elif calc(p[0],p[1],calc(p[2],p[3],calc(p[4],p[5],p[6]))) == 24: return '5' else :return False #--------------------------------------------------------- nums = input('Enter 4 integers: ') t = nums.split() cases = generate_all_combinations(t, '+-*/' ) for i in range(len(cases)): n1 = cases[i][0] o1 = cases[i][1] n2 = cases[i][2] o2 = cases[i][3] n3 = cases[i][4] o3 = cases[i][5] n4 = cases[i][6] if i == len(cases)-1 and check24(cases[i]) == False: print('No Solutions') break elif check24(cases[i]) == False: continue elif check24(cases[i]) == '1': print('( ( '+n1+' '+o1+' '+n2+' ) '+o2+' '+n3+' ) '+o3+' '+n4+' = 24') break elif check24(cases[i]) == '2': print('( '+n1+ ' '+o1+' ( '+n2+' '+o2+' '+n3+' ) ) '+ o3+ ' '+n4+' = 24') break elif check24(cases[i]) == '3': print('( '+n1+' '+o1+' '+n2+' ) '+o2+' ( '+n3+' '+o3+' '+n4+') = 24') break elif check24(cases[i]) == '4': print(n1+' '+o1+' ( ( '+n2+' '+o2+' '+n3+' ) '+o3+' '+n4+' )'+' = 24') break elif check24(cases[i]) == '5': print(n1+' '+o1+' ( '+n2+ ' '+o2+' ( '+n3+' '+o3+' '+n4+' ) )'+' = 24') break
# 6330569221 (20) 392 (2021-02-22 13:40) def cal(num1, op, num2) : if op == '+' : r = float(num1) + float(num2) elif op == '-' : r = float(num1) - float(num2) elif op == '*' : r = float(num1) * float(num2) elif op == '/' : if float(num2) == 0 : r = 555555555555 else : r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... ... nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) a = cases n=0 k=0 while k != 24 and n < len(a) : k =cal(a[n][0],a[n][1],a[n][2]) k =cal(k,a[n][3],a[n][4]) k =cal(k,a[n][5],a[n][6]) if k == 24: a[n-1] = '('+' ( '+str(a[n][0])+' '+str(a[n][1])+' '+str(a[n][2])+' '+')'+' '+str(a[n][3])+' '+str(a[n][4])+' ) '+str(a[n][5])+' '+str(a[n][6]) else : n+=1 if k == 24 :pass else: k=0 n=0 while k!= 24 and n < len(a) : k =cal(a[n][2],a[n][3],a[n][4]) k =cal(a[n][0],a[n][1],k) k =cal(k,a[n][5],a[n][6]) if k == 24: a[n-1] = '( '+str(a[n][0])+' '+str(a[n][1])+' ( '+str(a[n][2])+' '+str(a[n][3])+' '+str(a[n][4])+' ) ) '+str(a[n][5])+' '+str(a[n][6]) else : n+=1 if k==24 :pass else : k=0 n=0 while k != 24 and n < len(a) : k =cal(a[n][0],a[n][1],a[n][2]) s =cal(a[n][4],a[n][5],a[n][6]) k =cal(k,a[n][3],s) if k == 24: a[n-1] = '( '+str(a[n][0])+' '+str(a[n][1])+' '+str(a[n][2])+' ) '+str(a[n][3])+' ( '+str(a[n][4])+' '+str(a[n][5])+' '+str(a[n][6])+' )' else : n+=1 if k == 24 :pass else: k=0 n=0 while k!= 24 and n < len(a) : k =cal(a[n][2],a[n][3],a[n][4]) k =cal(k,a[n][5],a[n][6]) k =cal(a[n][0],a[n][1],k) if k == 24: a[n-1] = str(a[n][0])+' '+str(a[n][1])+' ( ( '+str(a[n][2])+' '+str(a[n][3])+' '+str(a[n][4])+' ) '+str(a[n][5])+' '+str(a[n][6])+' )' else : n+=1 if k == 24 :pass else: k=0 n=0 while k!= 24 and n < len(a) : k =cal(a[n][4],a[n][5],a[n][6]) k =cal(a[n][2],a[n][3],k) k =cal(a[n][0],a[n][1],k) if k == 24: a[n-1] = str(a[n][0])+' '+str(a[n][1])+' ( '+str(a[n][2])+' '+str(a[n][3])+' ( '+str(a[n][4])+' '+str(a[n][5])+' '+str(a[n][6])+' ) )' else : n+=1 if k != 24: print('No Solutions') else: print(str(a[n-1])+' = 24')
# 6330570821 (18) 393 (2021-02-19 13:41) def calc(num1, operation, num2): num1 = float(num1) num2 = float(num2) if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1 * num2 elif num2 == 0: r = 1e20 elif operation == '/': r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') number = nums.split() x = [] cases = generate_all_combinations( number, '+-*/' ) for s in cases: subc1 = calc((calc((calc(s[0], s[1], s[2])),s[3],s[4])),s[5],s[6]) subc2 = calc(calc(s[0],s[1],calc(s[2],s[3],s[4])),s[5],s[6]) subc3 = calc((calc(s[0], s[1], s[2])),s[3],(calc(s[4], s[5], s[6]))) subc4 = calc(s[0],s[1],calc((calc(s[2], s[3], s[4])),s[5],s[6])) subc5 = calc(s[0],s[1],calc(s[2],s[3],calc(s[4],s[5],s[6]))) if subc1 == 24: x = ['(','(',s[0],s[1],s[2],')',s[3],s[4],')',s[5],s[6]] break elif subc2 == 24: x = ['(',s[0],s[1],'(',s[2],s[3],s[4],')',')',s[5],s[6]] break elif subc3 == 24: x = ['(',s[0],s[1],s[2],')',s[3],'(',s[4],s[5],s[6],')'] break elif subc4 == 24: x = [s[0],s[1],'(','(',s[2],s[3],s[4],')',s[5],s[6],')'] break elif subc5 == 24: x = ['(','(',s[0],s[1],s[2],')',s[3],s[4],')',s[5],s[6]] break else: x = '''No Solutions''' if type(x) != list: print(x) else: print(' '.join(x)+' = 24')
# 6330571421 (20) 394 (2021-02-22 15:11) #--------------------------------------------------------- nums = input('Enter 4 integers: ') cases = generate_all_combinations( nums.split(), '+-*/' ) t = False parencases = [] c = 0 for e in cases: parencases.append(['(' , '(' , e[0] , e[1] , e[2] , ')' ,e[3] ,e[4] ,')' ,e[5] ,e[6]]) parencases.append(['(' , e[0] , e[1] , '(' , e[2] ,e[3] ,e[4] , ')' , ')' , e[5] , e[6]]) parencases.append(['(' , e[0] , e[1] , e[2] , ')' , e[3] , '(' , e[4] ,e[5] ,e[6] , ')']) parencases.append([e[0] , e[1] , '(' , '(' , e[2] , e[3] , e[4] ,')' , e[5] , e[6] , ')']) parencases.append([e[0] , e[1] , '(' , e[2] , e[3], '(' , e[4] , e[5] ,e[6] , ')' , ')']) for e in parencases: c += 1 try: e = ''.join(e) val = eval(e) if val == 24: t = True break except ZeroDivisionError: continue if t == True: print(' '.join(parencases[c-1])+ ' = 24') else: print('No Solutions')
# 6330572021 (20) 395 (2021-02-22 01:20) def cal(num1,op,num2): if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/': if num2==0: r=0 else: r=num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') p=0 nums_list =[int(e) for e in nums.split()] cases = generate_all_combinations( nums_list, '+-*/' ) for k in cases: if cal((cal((cal(k[0],k[1],k[2])),k[3],k[4])),k[5],k[6])==24: print('(','(',k[0],k[1],k[2],')',k[3],k[4],')',k[5],k[6],'=',24) break if cal((cal(k[0],k[1],(cal(k[2],k[3],k[4])))),k[5],k[6])==24: print('(',k[0],k[1],'(',k[2],k[3],k[4],')',')',k[5],k[6],'=',24) break if cal((cal(k[0],k[1],k[2])),k[3],(cal(k[4],k[5],k[6])))==24: print('(',k[0],k[1],k[2],')',k[3],'(',k[4],k[5],k[6],')','=',24) break if cal(k[0],k[1],(cal((cal(k[2],k[3],k[4])),k[5],k[6])))==24: print(k[0],k[1],'(','(',k[2],k[3],k[4],')',k[5],k[6],')','=',24) break if cal(k[0],k[1],(cal(k[2],k[3],(cal(k[4],k[5],k[6])))))==24: print(k[0],k[1],'(',k[2],k[3],'(',k[4],k[5],k[6],')',')','=',24) break p+=1 if p==len(cases): print('No Solutions')
# 6330573721 (18) 396 (2021-02-20 17:19) def find_24(nlist): for i in range(len(nlist)): n1 = nlist[i][0] o1 = nlist[i][1] n2 = nlist[i][2] o2 = nlist[i][3] n3 = nlist[i][4] o3 = nlist[i][5] n4 = nlist[i][6] f1 = '( ( {} {} {} ) {} {} ) {} {}'.format(n1,o1,n2,o2,n3,o3,n4) f2 = '( {} {} ( {} {} {} ) ) {} {}'.format(n1,o1,n2,o2,n3,o3,n4) f3 = '( {} {} {} ) {} ( {} {} {} )'.format(n1,o1,n2,o2,n3,o3,n4) f4 = '{} {} ( ( {} {} {} ) {} {} )'.format(n1,o1,n2,o2,n3,o3,n4) f5 = '{} {} ( {} {} ( {} {} {} ) )'.format(n1,o1,n2,o2,n3,o3,n4) try: if eval(f1) == 24: return f1 + ' = 24' elif eval(f2) == 24: return f2 + ' = 24' elif eval(f3) == 24: return f3 + ' = 24' elif eval(f4) == 24: return f4 + ' = 24' elif eval(f5) == 24: return f5 + ' = 24' except: return 'No Solutions' return 'No Solutions' #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations(nums, '+-*/' ) #print(cases[1]) ans = find_24(cases) print(ans)
# 6330574321 (20) 397 (2021-02-22 20:07) def cal_(n1,op,n2): n1=float(n1) n2=float(n2) if op=='+': ans=n1+n2 elif op=='-': ans=n1-n2 elif op=='*': ans=n1*n2 elif n2!=0 and op=='/': ans=n1/n2 else: return False return ans #--------------------------------------------------------- nums = input('Enter 4 integers: ') a=nums.split() cases = generate_all_combinations(a,'+-*/') for b in cases: c=b[0] d=b[1] e=b[2] f=b[3] g=b[4] h=b[5] i=b[6] j=cal_(cal_(cal_(c,d,e),f,g),h,i) k=cal_(cal_(c,d,cal_(e,f,g)),h,i) l=cal_(cal_(c,d,e),f,cal_(g,h,i)) m=cal_(c,d,cal_(cal_(e,f,g),h,i)) n=cal_(c,d,cal_(e,f,cal_(g,h,i))) if j==24: print('( '+'( '+c+' '+d+' '+e+' ) '+f+' '+g+' ) '+h+' '+i+' = 24') break elif k==24: print('( '+c+' '+d+' ( '+e+' '+f+' '+g+' ) '+') '+h+' '+i+' = 24') break elif l==24: print('( '+c+' '+d+' '+e+' ) '+f+' ( '+g+' '+h+' '+i+' )'+' = 24') break elif m==24: print(c+' '+d+' ( '+'( '+e+' '+f+' '+g+' ) '+h+' '+i+' )'+' = 24') break elif n==24: print(c+' '+d+' ( '+e+' '+f+' ( '+g+' '+h+' '+i+' ) '+')'+' = 24') break else: print('No Solutions')
# 6330575021 (19.82) 398 (2021-02-19 10:13) #case1 ( ( 1 + 2 ) + 3 ) + 4 def cal1(num1,num2,num3,num4,op1,op2,op3) : num1 = float(num1) num2 = float(num2) num3 = float(num3) num4 = float(num4) r = [] try : if op1 == "+" : r = num1 + num2 elif op1 == "-" : r = num1 - num2 elif op1 == "*" : r = num1 * num2 elif op1 == "/" : r = num1 / num2 if op2 == "+" : r += num3 elif op2 == "-" : r -= num3 elif op2 == "*" : r *= num3 elif op2 == "/" : r /= num3 if op3 == "+" : r += num4 elif op3 == "-" : r -= num4 elif op3 == "*" : r *= num4 elif op3 == "/" : r /= num4 except ZeroDivisionError: return return r # case 2 ( 1 + ( 2 + 3 ) ) + 4 def cal2(num1,num2,num3,num4,op1,op2,op3) : num1 = float(num1) num2 = float(num2) num3 = float(num3) num4 = float(num4) r = [] try : if op2 == "+" : r = num2 + num3 elif op2 == "-" : r = num2 - num3 elif op2 == "*" : r = num2 * num3 elif op2 == "/" : r = num2 / num3 if op1 == "+" : r = num1 + r elif op1 == "-" : r = num1 - r elif op1 == "*" : r = num1 * r elif op1 == "/" : r = num1 / r if op3 == "+" : r += num4 elif op3 == "-" : r -= num4 elif op3 == "*" : r *= num4 elif op3 == "/" : r /= num4 except ZeroDivisionError: return return r # case 3 ( 1 + 2 ) + ( 3 + 4 ) def cal3(num1,num2,num3,num4,op1,op2,op3) : num1 = float(num1) num2 = float(num2) num3 = float(num3) num4 = float(num4) r = [] s = [] l = [] try : if op1 == "+" : r = num1 + num2 elif op1 == "-" : r = num1 - num2 elif op1 == "*" : r = num1 * num2 elif op1 == "/" : r = num1 / num2 if op3 == "+" : s = num3 + num4 elif op3 == "-" : s = num3 - num4 elif op3 == "*" : s = num3 * num4 elif op3 == "/" : s = num3 / num4 if op2 == "+" : l = r + s elif op2 == "-" : l = r - s elif op2 == "*" : l = r * s elif op2 == "/" : l = r / s except ZeroDivisionError: return return l # case 4 1 + ( ( 2 + 3 ) + 4 ) def cal4(num1,num2,num3,num4,op1,op2,op3) : num1 = float(num1) num2 = float(num2) num3 = float(num3) num4 = float(num4) r = [] try : if op2 == "+" : r = num2 + num3 elif op2 == "-" : r = num2 - num3 elif op2 == "*" : r = num2 * num3 elif op2 == "/" : r = num2 / num3 if op3 == "+" : r = r + num4 elif op3 == "-" : r = r - num4 elif op3 == "*" : r = r * num4 elif op3 == "/" : r = r / num4 if op1 == "+" : r = num1 + r elif op1 == "-" : r = num1 - r elif op1 == "*" : r = num1 * r elif op1 == "/" : r = num1 / r except ZeroDivisionError: return return r # case 5 1 + ( 2 + ( 3 + 4 ) ) def cal5(num1,num2,num3,num4,op1,op2,op3) : num1 = float(num1) num2 = float(num2) num3 = float(num3) num4 = float(num4) r = [] try : if op3 == "+" : r = num3 + num4 elif op3 == "-" : r = num3 - num4 elif op3 == "*" : r = num3 * num4 elif op3 == "/" : r = num3 / num4 if op2 == "+" : r = num2 + r elif op2 == "-" : r = num2 - r elif op2 == "*" : r = num2 * r elif op2 == "/" : r = num2 / r if op1 == "+" : r = num1 + r elif op1 == "-" : r = num1 - r elif op1 == "*" : r = num1 * r elif op1 == "/" : r = num1 / r except ZeroDivisionError: return return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') c = generate_all_combinations(nums.split(), '+-*/') for i in range(len(c)) : x = c[i] c1 =cal1(x[0],x[2],x[4],x[6],x[1],x[3],x[5]) c2 =cal2(x[0],x[2],x[4],x[6],x[1],x[3],x[5]) c3 =cal3(x[0],x[2],x[4],x[6],x[1],x[3],x[5]) c4 =cal4(x[0],x[2],x[4],x[6],x[1],x[3],x[5]) c5 =cal5(x[0],x[2],x[4],x[6],x[1],x[3],x[5]) ans = 0 if c1 == 24 : print('(','(',x[0],x[1],x[2],')',x[3],x[4],')',x[5],x[6],'=','24') ans+=1 break elif c2 == 24 : print('(',x[0],x[1],'(',x[2],x[3],x[4],')',')',x[5],x[6],'=','24') ans+=1 break elif c3 == 24 : print('(',x[0],x[1],x[2],')',x[3],"(",x[4],x[5],x[6],')','=','24') ans+=1 break elif c4 == 24 : print(x[0],x[1],'(','(',x[2],x[3],x[4],')',x[5],x[6],')','=','24') ans+=1 break elif c5 == 24 : print(x[0],x[1],'(',x[2],x[3],'(',x[4],x[5],x[6],')',')','=','24') ans+=1 break if ans == 0 : print("No Solution")
# 6330576621 (20) 399 (2021-02-21 00:32) def calc(num1,op,num2): if op == "+": r =float(num1)+float(num2) elif op == "-": r =float(num1)-float(num2) elif op == "*": r =float(num1)*float(num2) elif op == "/" : if float(num2) ==0: return 0 r =float(num1)/float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) c=[] for b in cases: re1=calc(calc(calc(b[0],b[1],b[2]),b[3],b[4]),b[5],b[6]) if re1 ==24: c+=["("+" "+"("+" "+b[0]+" "+b[1]+" "+b[2]+" "+")"+" "+b[3]+" "+b[4]+" "+")"+" "+b[5]+" "+b[6]] re2=calc(calc(b[0],b[1],calc(b[2],b[3],b[4])),b[5],b[6]) if re2 ==24: c+=["("+" "+b[0]+" "+b[1]+" "+"("+" "+b[2]+" "+b[3]+" "+b[4]+" "+")"+" "+")"+" "+b[5]+" "+b[6]] re3=calc(calc(b[0],b[1],b[2]),b[3],calc(b[4],b[5],b[6])) if re3 ==24: c+=["("+" "+b[0]+" "+b[1]+" "+b[2]+" "+")"+" "+b[3]+" "+"("+" "+b[4]+" "+b[5]+" "+b[6]+" "+")"] re4=calc(b[0],b[1],calc(calc(b[2],b[3],b[4]),b[5],b[6])) if re4 ==24: c+=[b[0]+" "+b[1]+" "+"("+" "+"("+" "+b[2]+" "+b[3]+" "+b[4]+" "+")"+" "+b[5]+" "+b[6]+" "+")"] re5=calc(b[0],b[1],calc(b[2],b[3],calc(b[4],b[5],b[6]))) if re5 ==24: c+=[b[0]+" "+b[1]+" "+"("+" "+b[2]+" "+b[3]+" "+"("+" "+b[4]+" "+b[5]+" "+b[6]+" "+")"+" "+")"] if len(c)!=0: print(c[0]+" "+"="+" "+"24") if len(c)==0: print("No Solutions")
# 6330577221 (20) 400 (2021-02-21 17:23) #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list=nums.split() cases = generate_all_combinations(num_list, '+-*/' ) def calc(num1,op,num2): num1=float(num1) num2=float(num2) if op == '+': r=num1+num2 elif op == '-': r=num1-num2 elif op == '*': r=num1*num2 elif op == '/' and num2 != 0: r=num1/num2 elif op == '/' and num2 == 0: r=10**10 return r for i in range(len(cases)): n1,n2,n3,n4=cases[i][::2] op1,op2,op3=cases[i][1::2] status='ok' if calc(calc(calc(n1,op1,n2),op2,n3),op3,n4) == 24: print('( (',str(n1),op1,str(n2),')',op2,str(n3),')',op3,str(n4),'= 24') break elif calc(calc(n1,op1,calc(n2,op2,n3)),op3,n4) == 24: print('(',str(n1),op1,'(',str(n2),op2,str(n3),') )',op3,str(n4),'= 24') break elif calc(calc(n1,op1,n2),op2,calc(n3,op3,n4)) == 24: print('(',str(n1),op1,str(n2),')',op2,'(',str(n3),op3,str(n4),')','= 24') break elif calc(n1,op1,calc(calc(n2,op2,n3),op3,n4)) == 24: print(str(n1),op1,'( (',str(n2),op2,str(n3),')',op3,str(n4),')','= 24') break elif calc(n1,op1,calc(n2,op2,calc(n3,op3,n4))) == 24: print(str(n1),op1,'(',str(n2),op2,'(',str(n3),op3,str(n4),') )','= 24') break else: status='' if status=='': print('No Solutions')
# 6330578921 (20) 401 (2021-02-19 00:17) def calc(num1,op,num2): if num1 == 'a' or num2 == 'a': r = 'a' elif op == '+': r = float(num1) + float(num2) elif op == '-': r = float(num1) - float(num2) elif op == '*': r = float(num1) * float(num2) elif op == '/': if float(num2) == 0: r = 'a' else: r = float(num1) / float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... cases = generate_all_combinations(nums.split() , '+-*/' ) for i in cases : if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6]) == 24: print('(','(',i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'=','24') break if calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6]) == 24: print('(',i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'=','24') break if calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) == 24: print('(',i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','=','24') break if calc(i[0],i[1],(calc(calc(i[2],i[3],i[4]),i[5],i[6]))) == 24: print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','=','24') break if calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) == 24: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','=','24') break if i == cases[-1]: print("No Solutions") break ...
# 6330579521 (17.84) 402 (2021-02-21 20:22) def eiei(a): y='' ans=0 if a[1]=='+': ans=float(a[0])+float(a[2]) y='+' elif a[1]=='-': ans=float(a[0])-float(a[2]) y='-' elif a[1]=='*': ans=float(a[0])*float(a[2]) y='*' elif a[1]=='/' and float(a[2])!=0: ans=float(a[0])/float(a[2]) y='/' return ans,y def oioi(y1,y2,y3): if y1 in ['+','-','*','/'] and y2 in ['+','-','*','/'] and y3 in ['+','-','*','/']: return True else: return False #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations(nums,'+-*/') c=[] for i in range(len(cases)): ans=0 c=cases[i] # a=[] # y1='' # y2='' # y3='' a=[c[0],c[1],c[2]] ans,y1=eiei(a) a=[str(ans),c[3],c[4]] ans,y2=eiei(a) a=[str(ans),c[5],c[6]] ans,y3=eiei(a) if float(ans)==24: # print('yes1') if oioi(y1,y2,y3): print('(','(',c[0],y1,c[2],')',y2,c[4],')',y3,c[6],'=',24) break ans=0 c=cases[i] a=[] a=[c[2],c[3],c[4]] ans,y2=eiei(a) a=[c[0],c[1],str(ans)] ans,y1=eiei(a) a=[str(ans),c[5],c[6]] ans,y3=eiei(a) if float(ans)==24: # print('yes2') if oioi(y1,y2,y3): print('(',c[0],y1,'(',c[2],y2,c[4],')',')',y3,c[6],'=',24) # print(i,cases[i]) break ans=0 ans2=0 c=cases[i] a=[] a_=[c[0],c[1],c[2]] ans,y1=eiei(a_) b_=[c[4],c[5],c[6]] ans2,y3=eiei(b_) a=[str(ans),c[3],str(ans2)] ans,y2=eiei(a) if float(ans)==24: # print('yes3') if oioi(y1,y2,y3): print('(',c[0],y1,c[2],')',y2,'(',c[4],y3,c[6],')','=',24) break ans=0 c=cases[i] a=[] a=[c[2],c[3],c[4]] ans,y2=eiei(a) a=[str(ans),c[5],c[6]] ans,y3=eiei(a) a=[c[0],c[1],str(ans)] ans,y1=eiei(a) if float(ans)==24: # print('yes4') print(c[0],c[2],c[4],c[6]) if oioi(y1,y2,y3): print(c[0],y1,'(','(',c[2],y2,c[4],')',y3,c[6],')','=',24) break ans=0 c=cases[i] a=[] a=[c[4],c[5],c[6]] ans,y3=eiei(a) a=[c[2],c[3],str(ans)] ans,y2=eiei(a) a=[c[0],c[1],str(ans)] ans,y1=eiei(a) if float(ans)==24: # print('yes5') if oioi(y1,y2,y3): print(c[0],y1,'(',c[2],y2,'(',c[4],y3,c[6],')',')','=',24) break if ans!=24: print('No solutions')
# 6330580021 (19.64) 403 (2021-02-20 22:12) def calc(num1,op,num2): from random import randint if op=='+': r=num1 + num2 else: if op=='-': r=num1 - num2 else: if op=='*': r=num1 * num2 else: if op=='/' and num2==0: r=num1 / 100 else: r=num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') ... nums = [int(nums.split(" ")[0]),int(nums.split(" ")[1]),int(nums.split(" ")[2]),int(nums.split(" ")[3])] import random cases = generate_all_combinations( nums, '+-*/' ) i=0 f=[] for i in range(len(cases)): x=str("( ( "+str(cases[i][0])+" "+str(cases[i][1])+" "+str(cases[i][2])+" ) "+str(cases[i][3])+" "+str(cases[i][4])+" ) "+str(cases[i][5])+" "+str(cases[i][6])+" = 24") y=str("( "+str(cases[i][0])+" "+str(cases[i][1])+" ( "+str(cases[i][2])+" "+str(cases[i][3])+" "+str(cases[i][4])+" ) ) "+str(cases[i][5])+" "+str(cases[i][6])+" = 24") z=str("( "+str(cases[i][0])+" "+str(cases[i][1])+" "+str(cases[i][2])+" ) "+str(cases[i][3])+" ( "+str(cases[i][4])+" "+str(cases[i][5])+" "+str(cases[i][6])+" )"+" = 24") w=str(str(cases[i][0])+" "+str(cases[i][1])+" ( ( "+str(cases[i][2])+" "+str(cases[i][3])+" "+str(cases[i][4])+" ) "+str(cases[i][5])+" "+str(cases[i][6])+" )"+" = 24") k=str(str(cases[i][0])+" "+str(cases[i][1])+" ( "+str(cases[i][2])+" "+str(cases[i][3])+" ( "+str(cases[i][4])+" "+str(cases[i][5])+" "+str(cases[i][6])+" ) )"+" = 24") a=calc((calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) b=calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) c=calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) d=calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) e=calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) if a==24: f.append(x) if b==24: f.append(y) if c==24: f.append(z) if d==24: f.append(w) if e==24: f.append(k) i+=1 if len(f)==0: print("No solution") else: print(random.choice(f))
# 6330583021 (20) 404 (2021-02-20 18:03) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1 * num2 elif op == '/': if num2 == 0: r = math.pi else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ').split() cases = generate_all_combinations( nums, '+-*/' ) for i in cases : i[0]=int(i[0]) i[2]=int(i[2]) i[4]=int(i[4]) i[6]=int(i[6]) if calc(calc(calc(i[0],i[1],i[2]),i[3],i[4]),i[5],i[6])==24: print("(","(",i[0],i[1],i[2],')',i[3],i[4],')',i[5],i[6],'= 24') break elif calc(calc(i[0],i[1],calc(i[2],i[3],i[4])),i[5],i[6])==24: print("(",i[0],i[1],'(',i[2],i[3],i[4],')',')',i[5],i[6],'= 24') break elif calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6]))==24: print("(",i[0],i[1],i[2],')',i[3],'(',i[4],i[5],i[6],')','= 24') break elif calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6]))==24: print(i[0],i[1],'(','(',i[2],i[3],i[4],')',i[5],i[6],')','= 24') break elif calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6])))==24: print(i[0],i[1],'(',i[2],i[3],'(',i[4],i[5],i[6],')',')','= 24') break if i == cases[-1]: print('No Solutions')
# 6330585221 (20) 405 (2021-02-19 22:50) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r = num1 - num2 elif op == '*': r = num1*num2 elif op == '/': if num2 == 0: return 979**97 else: r = num1/num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') e = [int(e) for e in nums.split()] cases = generate_all_combinations(e, '+-*/' ) for i in range(len(cases)): case1 = calc(calc(calc(cases[i][0], cases[i][1], cases[i][2]), cases[i][3], cases[i][4]), cases[i][5], cases[i][6]) case2 = calc(calc(cases[i][0], cases[i][1], calc(cases[i][2], cases[i][3], cases[i][4])), cases[i][5] ,cases[i][6]) case3 = calc(calc(cases[i][0], cases[i][1], cases[i][2]), cases[i][3], calc(cases[i][4], cases[i][5], cases[i][6])) case4 = calc(cases[i][0], cases[i][1], calc(calc(cases[i][2], cases[i][3], cases[i][4]), cases[i][5], cases[i][6])) case5 = calc(cases[i][0], cases[i][1], calc(cases[i][2], cases[i][3], calc(cases[i][4], cases[i][5], cases[i][6]))) if case1 == 24: case = ['( (', str(cases[i][0]), cases[i][1], str(cases[i][2]), ')', cases[i][3], str(cases[i][4]), ')', cases[i][5], str(cases[i][6])] print(' '.join(case),'=','24') break elif case2 == 24: case = ['(', str(cases[i][0]), cases[i][1], '(', str(cases[i][2]), cases[i][3], str(cases[i][4]), ') )', cases[i][5], str(cases[i][6])] print(' '.join(case),'=','24') break elif case3 == 24: case = ['(', str(cases[i][0]), cases[i][1], str(cases[i][2]), ')', cases[i][3], '(', str(cases[i][4]), cases[i][5], str(cases[i][6]), ')'] print(' '.join(case),'=','24') break elif case4 == 24: case = [str(cases[i][0]), cases[i][1], '( (', str(cases[i][2]), cases[i][3], str(cases[i][4]), ')', cases[i][5], str(cases[i][6]), ')'] print(' '.join(case),'=','24') break elif case5 == 24: case = [str(cases[i][0]), cases[i][1], '(', str(cases[i][2]), cases[i][3], '(', str(cases[i][4]), cases[i][5], str(cases[i][6]), ') )'] print(' '.join(case),'=','24') break if case1 != 24 and case2 != 24 and case3 != 24 and case4 != 24 and case5 != 24 : print('No Solutions')
# 6330586921 (20) 406 (2021-02-22 12:03) def calc(num1, op, num2): if op == '+': r = num1+num2 elif op == '-': r = num1-num2 elif op == '*': r = num1*num2 elif op == '/': if num2==0: r=9999999999999999999999 else: r= num1 / num2 return r def fuck(a,b,c,d,e,f,g): x1=calc(calc(calc(a,b,c),d,e),f,g) x2=calc(calc(a,b,calc(c,d,e)),f,g) x3=calc(calc(a,b,c),d,calc(e,f,g)) x4=calc(a,b,calc(calc(c,d,e),f,g)) x5=calc(a,b,calc(c,d,calc(e,f,g))) xa= '( ( ' + str(a) +' '+ str(b) +' '+ str(c) + ' ) ' + str(d) +' '+ str(e) + ' ) ' + str(f) +' '+ str(g) xb= '( ' + str(a) +' '+ str(b) + ' ( ' + str(c) +' '+ str(d) +' '+ str(e) + ' ) ) ' + str(f) + ' '+str(g) xc= '( ' + str(a) + ' '+str(b) + ' '+str(c) + ' ) ' + str(d) + ' ( ' + str(e) +' '+ str(f) +' '+ str(g) +' )' xd=str(a) + ' '+str(b) + ' ( ( ' + str(c) +' '+ str(d) +' '+ str(e) + ' ) ' + str(f) + ' '+str(g) + ' )' xe=str(a) + " "+ str(b) + ' ( ' + str(c) + ' '+str(d) + ' ( ' + str(e) +' '+ str(f) + ' '+str(g) + ' ) )' if x1==24: return xa elif x2==24: return xb elif x3==24: return xc elif x4==24: return xd elif x5==24: return xe return 99 def kuyrai(nums): a=nums.split() x=generate_all_combinations([int(i) for i in a], '+-*/') for i in x: a,b,c,d,e,f,g=i[0],i[1],i[2],i[3],i[4],i[5],i[6] if fuck(a,b,c,d,e,f,g)!=99: return fuck(a,b,c,d,e,f,g)+' = 24' return 'No Solutions' #--------------------------------------------------------- nums = input('Enter 4 integers: ') print(kuyrai(nums))
# 6330587521 (20) 407 (2021-02-19 21:41) def calc(num1, op, num2): if op=='+': r=num1+num2 elif op=='-': r=num1-num2 elif op=='*': r=num1*num2 elif op=='/' : if num2!=0: r=num1/num2 else: r=0 return r #--------------------------------------------------------- nums = [int (e) for e in input('Enter 4 integers: ').split()] t=0 cases = generate_all_combinations(nums,'+-*/') for i in cases: #case 1 ((a+b)+c)+d t=calc(i[0],i[1],i[2]) t=calc(t,i[3],i[4]) t=calc(t,i[5],i[6]) if t==24: k='( ('+' '+str(i[0])+' '+i[1]+' '+str(i[2])+' )'+' '+i[3]+' '+str(i[4])+' ) '+i[5]+' '+str(i[6])+' = 24' break #case2 (a+(b+c))+d t=calc(i[2],i[3],i[4]) t=calc(i[0],i[1],t) t=calc(t,i[5],i[6]) if t==24: k='( '+str(i[0])+' '+i[1]+' ( '+str(i[2])+' '+i[3]+' '+str(i[4])+' ) ) '+i[5]+' '+str(i[6])+' = 24' break #case3 (a+b)+(c+d) t=calc(calc(i[0],i[1],i[2]),i[3],calc(i[4],i[5],i[6])) if t==24: k='( '+str(i[0])+' '+i[1]+' '+str(i[2])+' ) '+i[3]+' ( '+str(i[4])+' '+i[5]+' '+str(i[6])+' ) = 24' break #case4 a+((b+c)+d) t=calc(i[0],i[1],calc(calc(i[2],i[3],i[4]),i[5],i[6])) if t==24: k=str(i[0])+' '+i[1]+' ( ( '+str(i[2])+' '+i[3]+' '+str(i[4])+' ) '+i[5]+' '+str(i[6])+' ) = 24' break #case5 a+(b+(c+d)) t=calc(i[0],i[1],calc(i[2],i[3],calc(i[4],i[5],i[6]))) if t==24: k=str(i[0])+' '+i[1]+' ( '+str(i[2])+' '+i[3]+' ( '+str(i[4])+' '+i[5]+' '+str(i[6])+' ) ) = 24' break #check again for 24 or no solution if t==24: print(k) else: print('No Solutions')
# 6330588121 (14) 408 (2021-02-20 00:17) def calc(num1, op, num2): if op == '+': r = num1 + num2 elif op == '-': r= num1 - num2 elif op == '*': r= num1 * num2 elif op == '/': if num2==0: r=math.inf else: r= num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') n=nums.split() cases = generate_all_combinations([int(n[0]),int(n[1]),int(n[2]),int(n[3])],'+-*/' ) for ex in cases: s1=calc(calc(calc(ex[0], ex[1], ex[2]), ex[3], ex[4]), ex[5], ex[6]) s2=calc(calc(ex[0], ex[1], calc(ex[2], ex[3], ex[4])), ex[5], ex[6]) s3=calc(calc(ex[0], ex[1], ex[2]), ex[3], calc(ex[4], ex[5], ex[6])) s4=calc(ex[0], ex[1], calc(calc(ex[2], ex[3], ex[4]), ex[5], ex[6])) s5=calc(ex[0], ex[1], calc(ex[2], ex[3], calc(ex[4],ex[5],ex[6]))) if s1==24: print('(','(', ex[0], ex[1], ex[2],')',ex[3],ex[4],')',ex[5],ex[6],'=','24') break if s2==24: print('(',ex[0], ex[1],'(',ex[2],ex[3], ex[4],')',')', ex[5], ex[6],'=',24) break if s3==24: print('(',ex[0], ex[1], ex[2],')', ex[3],'(',ex[4], ex[5], ex[6],')','=',24) break if s4==24: print('(',ex[0], ex[1],'(','(',ex[2], ex[3], ex[4],')', ex[5], ex[6],')','=',24) break if s5==24: print('(',ex[0], ex[1],'(',ex[2], ex[3],'(',ex[4],ex[5],ex[6],')',')','=',24) break if s1!=24 and s2!=24 and s3!=24 and s4!=24 and s5!=24: print('No Solutions')
# 6330589821 (20) 409 (2021-02-20 22:33) def calc(num1, operation, num2): if operation == '+': r = num1 + num2 elif operation == '-': r = num1 - num2 elif operation == '*': r = num1*num2 elif operation == '/': if num2 != 0: r = num1/num2 else: r = 0 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') num_list = [int(e) for e in nums.split()] cases = generate_all_combinations( num_list, '+-*/' ) for c in cases : a = calc( calc( calc( c[0],c[1],c[2] ) ,c[3],c[4] ) ,c[5],c[6] ) solution = ['(','(',c[0],c[1],c[2],')',c[3],c[4],')',c[5],c[6],'=','24'] if a == 24: break else: a = calc(calc( c[0],c[1],calc(c[2],c[3],c[4])),c[5],c[6]) solution = ['(', c[0],c[1],'(',c[2],c[3],c[4],')',')',c[5],c[6],'=','24'] if a == 24: break else: a = calc(c[0],c[1],calc(calc(c[2],c[3],c[4]),c[5],c[6])) solution = [c[0],c[1],'(','(',c[2],c[3],c[4],')',c[5],c[6],')','=','24'] if a == 24: break else: a = calc(c[0],c[1],calc(c[2],c[3],calc(c[4],c[5],c[6]))) solution = [c[0],c[1],'(',c[2],c[3],'(',c[4],c[5],c[6],')',')','=','24'] if a == 24 : break else: a = calc( ( calc(c[0],c[1],c[2]) ) , c[3] , ( calc(c[4],c[5],c[6]) ) ) solution = ['(',c[0],c[1],c[2],')',c[3],'(',c[4],c[5],c[6],')','=','24'] if a == 24 : break if a == 24: print(solution[0],solution[1],solution[2],solution[3],solution[4],solution[5],solution[6],solution[7],solution[8],solution[9],solution[10],solution[11],solution[12]) else: print('No Solutions')
# 6330591021 (20) 410 (2021-02-20 11:22) def calc(num1 , op , num2) : if op == "+" : r = float(num1)+float(num2) elif op == "-" : r = float(num1)-float(num2) elif op == "*" : r = float(num1)*float(num2) elif op == "/" : if float(num2)==0 : return 100000 else : r = float(num1)/float(num2) return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') x= nums.split() cases = generate_all_combinations( x , '+-*/' ) n=0 k=0 #print(x) c = [x[0],x[1],x[2],x[3]] c.sort() #print(c) if x[0]!=x[1] and x[0]!=x[2] and x[0]!=x[3] and x[1]!=x[2] and x[1]!=x[3] and x[2]!=x[3]: k=24*64 if x[0]==x[1] or x[0]==x[2] or x[0]==x[3] or x[1]==x[2] or x[1]==x[3] or x[2]==x[3]: k=12*64 if c[0]==c[1]!=c[2]==c[3] : k=6*64 if c[0]==c[1]==c[2] or c[1]==c[2]==c[3] : k=4*64 if c[0]==c[1]==c[2]==c[3] : k=1*64 #print(k) for i in range (0,k,1) : #print(cases[i][0],cases[i][1],cases[i][2],cases[i][3],cases[i][4],cases[i][5],cases[i][6]) if (calc (calc ( calc(cases[i][0],cases[i][1],cases[i][2]) ,cases[i][3],cases[i][4]) , cases[i][5] , cases[i][6] ))==24 : print("( ( "+cases[i][0] +" "+ cases[i][1] +" "+ cases[i][2] + " ) " +cases[i][3] +" "+ cases[i][4] + " ) " + cases[i][5] +" "+ cases[i][6] +" = 24") n=1 break if (calc (calc( cases[i][0] , cases[i][1] , calc (cases[i][2] ,cases[i][3] , cases[i][4])) , cases[i][5] , cases[i][6] ))==24 : print("( "+ cases[i][0] +" "+ cases[i][1] + " ( " + cases[i][2] +" "+ cases[i][3] +" "+ cases[i][4]+" ) ) " + cases[i][5] +" "+ cases[i][6] +" = 24") n=1 break if (calc (calc (cases[i][0] , cases[i][1] , cases[i][2]) , cases[i][3] , calc (cases[i][4] , cases[i][5] , cases[i][6] )))==24 : print("( "+cases[i][0] +" "+ cases[i][1] +" "+ cases[i][2] +" ) "+ cases[i][3] +" ( "+cases[i][4] +" "+ cases[i][5] +" "+ cases[i][6] +" ) = 24") n=1 break if (calc (cases[i][0] , cases[i][1] ,calc ( calc (cases[i][2] , cases[i][3] , cases[i][4] ) , cases[i][5] , cases[i][6] )))==24 : print(cases[i][0] +" "+ cases[i][1] + " ( ( " + cases[i][2] + " " + cases[i][3] + " " + cases[i][4] + " ) "+ cases[i][5] +" "+ cases[i][6] + " ) = 24") n=1 break if (calc (cases[i][0] , cases[i][1] , calc (cases[i][2] , cases[i][3] , calc ( cases[i][4] , cases[i][5] , cases[i][6]))))==24 : print(cases[i][0] +" "+cases[i][1] +" ( "+cases[i][2] +" "+ cases[i][3] +" ( "+ cases[i][4] +" "+ cases[i][5] +" "+ cases[i][6]+" ) ) = 24") n=1 break #print (n) if n==0 : print ("No Solutions")
# 6330592621 (20) 411 (2021-02-19 17:31) def calc(num1 , op, num2) : if op == "+" : r = num1 + num2 elif op == "-" : r = num1 - num2 elif op == "*" : r = num1 * num2 elif op == "/" : if num2 == 0 : r = num1 * num2 else : r = num1 / num2 return r #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = nums.split() cases = generate_all_combinations( nums, '+-*/' ) for i in range (len(cases)) : cases[i][0] = int(cases[i][0]) cases[i][2] = int(cases[i][2]) cases[i][4] = int(cases[i][4]) cases[i][6] = int(cases[i][6]) a = calc(calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],cases[i][4]),cases[i][5],cases[i][6]) if a == 24 : print("( ( {} {} {} ) {} {} ) {} {} = 24".format(cases[i][0],cases[i][1],cases[i][2],cases[i][3],cases[i][4],cases[i][5],cases[i][6])) break a = calc(calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],cases[i][4])),cases[i][5],cases[i][6]) if a == 24 : print("( {} {} ( {} {} {} ) ) {} {} = 24".format(cases[i][0],cases[i][1],cases[i][2],cases[i][3],cases[i][4],cases[i][5],cases[i][6])) break a = calc(calc(cases[i][0],cases[i][1],cases[i][2]),cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6])) if a == 24 : print("( {} {} {} ) {} ( {} {} {} ) = 24".format(cases[i][0],cases[i][1],cases[i][2],cases[i][3],cases[i][4],cases[i][5],cases[i][6])) break a = calc(cases[i][0],cases[i][1],calc(calc(cases[i][2],cases[i][3],cases[i][4]),cases[i][5],cases[i][6])) if a == 24 : print("{} {} ( ( {} {} {} ) {} {} ) = 24".format(cases[i][0],cases[i][1],cases[i][2],cases[i][3],cases[i][4],cases[i][5],cases[i][6])) break a = calc(cases[i][0],cases[i][1],calc(cases[i][2],cases[i][3],calc(cases[i][4],cases[i][5],cases[i][6]))) if a == 24 : print("{} {} ( {} {} ( {} {} {} ) ) = 24".format(cases[i][0],cases[i][1],cases[i][2],cases[i][3],cases[i][4],cases[i][5],cases[i][6])) break if a != 24 : print("No Solutions") ...
# 6330593221 (20) 412 (2021-02-18 11:29) def calc(frist, op, second): if op == "+": answer = frist + second elif op == "-": answer = frist - second elif op == "*": answer = frist * second elif op == "/": if second == 0: answer = math.e else: answer = frist / second return answer #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = [int(e) for e in nums.split()] # ... # ... cases = generate_all_combinations( num, '+-*/' ) k = 0 for i in cases: num1 = i[0] op1 = i[1] num2 = i[2] op2 = i[3] num3 = i[4] op3 = i[5] num4 = i[6] ans1 = calc(calc(calc(num1, op1, num2), op2, num3), op3, num4) ans2 = calc(calc(num1, op1, calc(num2, op2, num3)), op3, num4) ans3 = calc(calc(num1, op1, num2), op2, calc(num3, op3, num4)) ans4 = calc(num1, op1, calc(calc(num2, op2, num3), op3, num4)) ans5 = calc(num1, op1, calc(num2, op2, calc(num3, op3, num4))) if ans1 == 24: print("( ( %d %s %d ) %s %d ) %s %d = 24" %(num1, op1, num2, op2, num3, op3, num4)) k = 1 # print(ans1) break if ans2 == 24: print("( %d %s ( %d %s %d ) ) %s %d = 24" %(num1, op1, num2, op2, num3, op3, num4)) k = 1 # print(ans2) break if ans3 == 24: print("( %d %s %d ) %s ( %d %s %d ) = 24" %(num1, op1, num2, op2, num3, op3, num4)) k = 1 # print(ans3) break if ans4 == 24: print("%d %s ( ( %d %s %d ) %s %d ) = 24" %(num1, op1, num2, op2, num3, op3, num4)) k = 1 # print(ans4) break if ans5 == 24: print("%d %s ( %d %s ( %d %s %d ) ) = 24" %(num1, op1, num2, op2, num3, op3, num4)) k = 1 # print(ans5) break if k == 0: print("No Solutions") # print(ans1) # print(ans2) # print(ans3) # print(ans4) # print(ans5)
# 6330594921 (19.82) 413 (2021-02-19 18:30) #--------------------------------------------------------- nums = input('Enter 4 integers: ') num = [int(e) for e in nums.split()] found = False cases = generate_all_combinations(num, '+-*/') for i in cases: # [1, '+', 2, '+', 3, '+', 4] <--i num1 = i[0] op1 = i[1] num2 = i[2] op2 = i[3] num3 = i[4] op3 = i[5] num4 = i[6] if op1 == "+": ans1 = num1 + num2 #( ( 1 + 2 ) + 3 ) + 4 elif op1 == "-": ans1 = num1 - num2 elif op1 == "*": ans1 = num1 * num2 elif op1 == "/": if num2 == 0: num2 = math.e ans1 = num1 / num2 if op2 == "+": # ( ans1 + 3 ) + 4 ans1 = ans1 + num3 elif op2 == "-": ans1 = ans1 - num3 elif op2 == "*": ans1 = ans1 * num3 elif op2 == "/": if num3 == 0: num3 = math.e ans1 = ans1 / num3 if op3 == "+": # ( ans1 + 3 ) + 4 ans1 = ans1 + num4 elif op3 == "-": ans1 = ans1 - num4 elif op3 == "*": ans1 = ans1 * num4 elif op3 == "/": if num4 == 0: num4 = math.e ans1 = ans1 / num4 # ( ans1 ) if op2 == "+": # ( 1 + ( 2 + 3 ) ) + 4 ans2 = num2 + num3 elif op2 == "-": ans2 = num2 - num3 elif op2 == "*": ans2 = num2 * num3 elif op2 == "/": if num3 == 0: num3 = math.e ans2 = num2 / num3 # ( 1 + (ans2) ) + 4 if op1 == "+": # ( 1 + ( 2 + 3 ) ) + 4 ans2 = num1 + ans2 elif op1 == "-": ans2 = num1 - ans2 elif op1 == "*": ans2 = num1 * ans2 elif op1 == "/": if ans2 == 0: ans2 = math.e ans2 = num1 / ans2 # ( 1 + (ans2) ) + 4 if op3 == "+": # (ans2 ) + 4 ans2 = ans2 + num4 elif op3 == "-": ans2 = ans2 - num4 elif op3 == "*": ans2 = ans2 * num4 elif op3 == "/": if num4 == 0: num4 = math.e ans2 = ans2 / num4 # ans2 if op1 == "+": ans3 = num1 + num2 # ( 1 + 2 ) + ( 3 + 4 ) elif op1 == "-": ans3 = num1 - num2 elif op1 == "*": ans3 = num1 * num2 elif op1 == "/": if num2 == 0: num2 = math.e ans3 = num1 / num2 if op3 == "+": ans3_2 = num3 + num4 # (ans3 ) + ( ans3_2 ) elif op3 == "-": ans3_2 = num3 - num4 elif op3 == "*": ans3_2 = num3 * num4 elif op3 == "/": if num4 == 0: num4 = math.e ans3_2 = num3 / num4 if op2 == "+": ans3 = ans3 + ans3_2 # ( 1 + 2 ) + ( 3 + 4 ) elif op2 == "-": ans3 = ans3 - ans3_2 elif op2 == "*": ans3 = ans3 * ans3_2 elif op2 == "/": if ans3_2 == 0: ans3_2 = math.e ans3 = ans3 / ans3_2 # ans3 if op2 == "+": # 1 + ( ( 2 + 3 ) + 4 ) ans4 = num2 + num3 elif op2 == "-": ans4 = num2 - num3 elif op2 == "*": ans4 = num2 * num3 elif op2 == "/": if num3 == 0: num3 = math.e ans4 = num2 / num3 # 1 + ( ans4 + 4 ) if op3 == "+": ans4 = ans4 + num4 elif op3 == "-": ans4 = ans4 - num4 elif op3 == "*": ans4 = ans4 * num4 elif op3 == "/": if num4 == 0: num4 = math.e ans4 = ans4 / num4 if op1 == "+": ans4 = num1 + ans4 elif op1 == "-": ans4 = num1 - ans4 elif op1 == "*": ans4 = num1 * ans4 elif op1 == "/": if ans4 == 0: ans4 = math.e ans4 = num1 / ans4 #ans4 if op3 == "+": ans5 = num3 + num4 # 1 + ( 2 + ( 3 + 4 ) ) elif op3 == "-": ans5 = num3 - num4 elif op3 == "*": ans5 = num3 * num4 elif op3 == "/": if num4 == 0: num4 = math.e ans5 = num3 / num4 # 1 + ( 2 + ans5 ) if op2 == "+": ans5 = num2 + ans5 elif op2 == "-": ans5 = num2 - ans5 elif op2 == "*": ans5 = num2 * ans5 elif op2 == "/": if ans5 == 0: ans5 = math.e ans5 = num2 / ans5 # 1 + ( ans5 ) if op1 == "+": ans5 = num1 + ans5 elif op1 == "-": ans5 = num1 - ans5 elif op1 == "*": ans5 = num1 * ans5 elif op1 == "/": if ans5 == 0: ans5 = math.e ans5 = num1 / ans5 if ans1 == 24: print("( ( %d %s %d ) %s %d ) %s %d = 24" %(num1, op1, num2, op2, num3, op3, num4)) found = True # print(ans1) break if ans2 == 24: print("( %d %s ( %d %s %d ) ) %s %d = 24" %(num1, op1, num2, op2, num3, op3, num4)) found = True # print(ans2) break if ans3 == 24: print("( %d %s %d ) %s ( %d %s %d ) = 24" %(num1, op1, num2, op2, num3, op3, num4)) found = True # print(ans3) break if ans4 == 24: print("%d %s ( ( %d %s %d ) %s %d ) = 24" %(num1, op1, num2, op2, num3, op3, num4)) found = True # print(ans4) break if ans5 == 24: print("%d %s ( %d %s ( %d %s %d ) ) = 24" %(num1, op1, num2, op2, num3, op3, num4)) found = True # print(ans5) break if not found: print("No Solution")
# 6331138621 (11.64) 414 (2021-02-22 23:55) import math import time import random #--------------------------------------------------------- nums = input('Enter 4 integers: ') nums = [int (e) for e in nums.split()] k=1 def calc(x,op,y): if op == '+': r = x+y elif op =='-': r = x-y elif op =='*': r = x*y elif op =='/': if y==0: y=k r = x/y return r cases = generate_all_combinations( nums,'+-*/' ) for i in cases : nums0 = i[0] op1 = i[1] nums1 = i[2] op2 = i[3] nums2 = i[4] op3 = i[5] nums3 = i[6] ans1 = calc(calc(calc(nums0,op1,nums1),op2,nums2),op3,nums3) ans2 = calc(calc(calc(nums1,op2,nums2),op1,nums0),op3,nums3) ans3 = calc(calc(calc(nums1,op2,nums2),op3,nums3),op1,nums0) ans4 = calc(calc(calc(nums2,op3,nums3),op2,nums1),op1,nums0) ans5 = calc(calc(nums0,op1,nums1),op2,calc(nums2,op3,nums3)) if ans1 == 24: print("( ( %d %s %d ) %s %d ) %s %d = 24" % (nums0, op1, nums1, op2, nums2, op3, nums3)) k = 2 break if ans2 == 24: print("( %d %s ( %d %s %d ) ) %s %d = 24" % (nums0, op1, nums1, op2, nums2, op3, nums3)) k = 2 break if ans3 == 24: print("%d %s ( %d %s ( %d %s %d ) ) = 24" % (nums0, op1, nums1, op2, nums2, op3, nums3)) k = 2 break if ans4 == 24: print("%d %s ( ( %d %s %d ) %s %d ) = 24" % (nums0, op1, nums1, op2, nums2, op3, nums3)) k = 2 break if ans5 == 24: print("( %d %s %d ) %s ( %d %s %d ) = 24" % (nums0, op1, nums1, op2, nums2, op3, nums3)) k = 2 break if k!=2 : print('No Solution')