Advertisement
jimkilled

15 prom

Apr 12th, 2021
610
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.97 KB | None | 0 0
  1. # (x in A + x in P) + (x in Q <= x in R)
  2. def xin(x, a):
  3.     return a[0] <= x <= a[1]
  4.  
  5. def f(x, a):
  6.     p = (10, 40)
  7.     q = (5, 15)
  8.     r = (35, 50)
  9.     return (xin(x, a) or xin(x, p)) or (xin(x, q) <= xin(x, r))
  10.  
  11. nums = [5, 10, 15, 35, 40, 50]
  12. nums.sort()
  13. min_l = 10000
  14. for i in range(len(nums)):
  15.     for j in range(i+1, len(nums)):
  16.         for x in range(1, 10000):
  17.              a = (nums[i], nums[j])
  18.              if not f(x, a):
  19.                  break
  20.         else:
  21.             print(nums[i], nums[j])
  22.             min_l = min(min_l, nums[j] - nums[i])
  23. print(min_l)
  24.  
  25. # nums = [5, 10, 15, 35, 40, 50]
  26. # nums.sort()
  27. # min_l = 10000
  28. # for a1 in range(5, 50+1):
  29. #     for a2 in range(a1+1, 50+1):
  30. #         for x in range(1, 10000):
  31. #             a = (a1, a2)
  32. #             if not f(x, a):
  33. #                 break
  34. #         else:
  35. #             print(a1, a2)
  36. #             if a1 in nums and a2 in nums:
  37. #                 min_l = min(min_l, a2 - a1)
  38. # print(min_l)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement