mrlolthe1st

Untitled

Jan 13th, 2022
1,043
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.31 KB | None | 0 0
  1. a, b, c=map(int, input().split())
  2. w = [-1, -2, 3, -4, -5, 6, -7, -8, -9, 10, -11, 12, -13, 14, -15, -16, 17, -18, -19, -20, 21, -22, 23, -24, 25, 26, -27, 28, -29, -30, 31, -32, -33, -34, -35, 36, -37, -38, -39, -40, -41, -42, -43, 44, -45, -46, -47, -48, 49, -50, -51, -52, 53, 54, -55, 56, -57, -58, -59, -60, 61, -62, -63, -64, -65, -66, 67, -68, 69, -70, 71, 72, -73, -74, -75, -76, 77, 78, -79, 80, -81, 82, -83, 84, -85, -86, -87, 88, -89, -90, 91, -92, 93, -94, -95, -96, -97, -98, 99, 100, -101, -102, 103, -104, -105, -106, -107, -108, 109, 110, -111, -112, -113, -114, 115, 116, -117, -118, 119, 120, -121, -122, -123, 124, -125, 126, -127, -128, -129, -130, 131, -132, -133, -134, 135, -136, -137, 138, -139, -140, 141, 142, -143, -144, 145, -146, 147, -148, -149, -150, -151, 152, -153, -154, -155, 156, -157, -158, 159, -160, 161, 162, -163, -164, 165, -166, -167, -168, -169, 170, -171, -172, 173, -174, 175, -176, 177, 178, -179, -180, -181, -182, 183, -184, -185, -186, 187, 188, -189, -190, -191, -192, 193, 194, -195, -196, -197, 198, -199, -200, -201]
  3. w1 = []
  4. for i in range(a):
  5.     for j in range(b):
  6.         n = 1 + i * 10 + j
  7.         a1 = w[n * 2 - 1] > 0
  8.         a2 = w[n * 2] > 0
  9.         print(1 + a1 * 2 + a2, ' ', end='')
  10.     print()
  11.  
  12. #exit()
  13. import pycosat
  14. sat = []
  15. for i in range(10):
  16.     for j in range(10):
  17.         n = 1 + i * 10 + j
  18.         a1 = n * 2
  19.         a2 = n * 2 + 1
  20.         # not (a && b) = (not a || not b)
  21.         sat += [[-a1, -a2]]
  22.         for i1 in range(i + 1, 10):
  23.             for j1 in range(j + 1, 10):
  24.                 n1 = 1 + i1 * 10 + j1
  25.                 d1 = n1 * 2
  26.                 d2 = n1 * 2 + 1
  27.                 n1 = 1 + i1 * 10 + j
  28.                 c1 = n1 * 2
  29.                 c2 = n1 * 2 + 1
  30.                 n1 = 1 + i * 10 + j1
  31.                 b1 = n1 * 2
  32.                 b2 = n1 * 2 + 1
  33.                
  34.                 # (x1y1 != x1y2) || (x1y1 != x2y1) || (x1y1 != x2y2) || (x1y2 != x2y2) || (x1y2 != x2y1) || (x2y1 != x2y2)
  35.                 # a == b <=> (a && b) || (!a && !b)
  36.                 # !(a == b) <=> (a || b) && (!a || !b)
  37.                 sat += [[a1,a2,b1,b2,c1,c2,d1,d2],[a1,-a2,b1,-b2,c1,-c2,d1,-d2],[-a1,a2,-b1,b2,-c1,c2,-d1,d2],[-a1,-a2,-b1,-b2,-c1,-c2,-d1,-d2]]
  38.           #      break
  39.          #   break
  40.         #break
  41. print(sat)
  42. print(pycosat.solve(sat))
Advertisement
Add Comment
Please, Sign In to add comment