Advertisement
Pastehsjsjs

Untitled

Jun 2nd, 2023
822
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.09 KB | Source Code | 0 0
  1. def fn(x, y, vals):
  2.     if x == y:
  3.         return 1
  4.     elif all(vals): return 0
  5.     else:
  6.         y1 = int(str(x + 1)[-1])
  7.         y2 = int(str(x + 3)[-1])
  8.         y3 = int(str(x + 7)[-1])
  9.         v1 = vals.copy()
  10.         v2 = vals.copy()
  11.         v3 = vals.copy()
  12.         v1[y1] = 1
  13.         v2[y2] = 1
  14.         v3[y3] = 1
  15.         if vals[y1] and vals[y2] and vals[y3]:
  16.             return 0
  17.         elif not any([vals[y1], vals[y2], vals[y3]]):
  18.             return fn(y1, y, v1) + fn(y2, y, v2) + fn(y3, y, v3)
  19.         elif not any([vals[y1], vals[y2]]):
  20.             return fn(y1, y, v1) + fn(y2, y, v2)
  21.         elif not any([vals[y1], vals[y3]]):
  22.             return fn(y1, y, v1) + fn(y3, y, v3)
  23.         elif not any([vals[y2], vals[y3]]):
  24.             return fn(y2, y, v2) + fn(y3, y, v3)
  25.         elif not vals[y1]:
  26.             return fn(y1, y, v1)
  27.         elif not vals[y2]:
  28.             return fn(y2, y, v2)
  29.         elif not vals[y3]:
  30.             return fn(y3, y, v3)
  31.  
  32. print(fn(1+1, 1, [0,0,1,0,0,0,0,0,0,0]) + fn(1+3, 1, [0,0,0,0,1,0,0,0,0,0]) + fn(1+7, 1, [0,0,0,0,0,0,0,0,1,0]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement