cat > /tmp/x.py << "EOF" import random,time,math CL=[] for r in range(7): for c in range(5): CL.append([(r,c+1),(r,c+2),(r+1,c),(r+1,c+1),(r+1,c+2),(r+1,c+3)]) CV=[[[] for j in range(8)] for i in range(8)] for k,cl in enumerate(CL): for p in cl: CV[p[0]][p[1]].append(k) SS=lambda g:[sum(g[a][b] for a,b in cl) for cl in CL] G=[int(x) for x in "59 54 28 58 64 40 42 61 50 4 8 23 5 3 18 52 53 39 9 45 43 10 37 46 62 32 1 15 31 6 26 57 60 17 21 20 41 14 24 56 51 35 12 27 13 22 34 44 63 2 29 25 38 11 7 49 55 36 30 16 19 33 47 48".split()] g=[G[8*i:8*i+8] for i in range(8)] ss=SS(g) BV=max(ss) t0=time.time() cur=max(ss)+0.08*sum(sorted(ss)[-6:])+0.002*sum(ss) T=4.0 for it in range(500000): a=random.randrange(8)