Задача к ЕГЭ по информатике на тему «Множества» №2

Элементами множества А являются натуральные числа. Известно, что выражение

-------------------                      ------- (x ∈ {2,4,6,8,10,12}) → ((x ∈ {3,6,9,12,15})∧(x ∈ A) → (x ∈ {2,4,6,8,10,12}))

истинно (т. е. принимает значение 1) при любом значении переменной х. Определите наименьшее возможное количество элементов множества A.

def f(x, A):
 
    first = [2, 4, 6, 8, 10, 12]
 
    second = [3, 6, 9, 12, 15]
 
    return (x not in first) <= (((x in second) and (x not in A)) <= (x in first))
 

 
def podh(A):
 
    for x in range(1, 100):
 
        if not f(x, A):
 
            return False
 
    return True
 

 
arr = [2, 3, 4, 6, 8, 9, 10, 12, 15]
 
ans = 100
 
for i in range(2 ** len(arr)):
 
    A = []
 
    t = i
 
    for j in range(len(arr)):
 
        if t % 2 == 1:
 
            A.append(arr[j])
 
        t //= 2
 
    if podh(A):
 
        if ans > len(A):
 
            print(A)
 
        ans = min(ans, len(A))
 

 
print(ans)

Ответ: 3
Оцените статью
Я решу все!