Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2019
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.98 KB | None | 0 0
  1. #!/usr/bin/env python3
  2. from random import choice as c
  3. from itertools import permutations as p
  4. from secret import flag
  5.  
  6. v = ['==','(',')','A','B','C','X','0','1','2']
  7. def calc(t1, t2, m1, X, i, expr):
  8.     try:
  9.         A, B, C = m1
  10.         r = eval(expr)
  11.     except Exception as e:
  12.         print("Error...", e)
  13.         exit(0)
  14.     return t2[X](t1[m1[i]](r))
  15.  
  16. def do_round():
  17.     t1 = (lambda r: r, lambda r: not r, lambda r: c((True, False)))
  18.     t2 = (lambda r: r, lambda r: not r)
  19.     m1 = c(list(p(range(len(t1)))))
  20.     m2 = c(range(len(t2)))
  21.  
  22.     for _ in range(3):
  23.         print("I?")
  24.         ts = [t for t in input().split(" ") if t in v]
  25.         print("R: {}".format(calc(t1, t2, m1, m2, int(ts[0]), "".join(ts[1:]))))
  26.  
  27.     print("A?")
  28.     return m1 == tuple(map(int, input().split(" ")))
  29.  
  30. for i in range(50):
  31.     if not do_round():
  32.         print("Wrong...")
  33.         exit(0)
  34.     else:
  35.         print("Correct!")
  36.  
  37. print("Good job, here is your flag: {}".format(flag))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement