Все задачи №15
№15

Побитовое И

Поразрядная конъюнкция x & y — это число, в двоичной записи которого стоит 1 в тех разрядах, где у обоих чисел x и y стоит 1. Для какого наименьшего натурального числа A формула ((x & 22 ≠ 0) ∧ (x & 9 = 0)) → (x & A ≠ 0) тождественно истинна при любом неотрицательном целом x?

Учебная задача

Ответвпиши то, что вывела программа
Показать разбор
  1. Перепиши формулу в функцию f(x, A): → это <=, ≠ это !=.
  2. Сравнения с нулём возьми в скобки вместе с x & число.
  3. Перебирай A с 1, а x от 0 до 3999: для поразрядных берём диапазон с запасом.
  4. Нужно наименьшее A, поэтому возьми min и выведи результат.
def f(x, A):
    return ((x & 22 != 0) and (x & 9 == 0)) <= (x & A != 0)

print(min(A for A in range(1, 2000) if all(f(x, A) for x in range(0, 4000))))