Сколько существует различных наборов значений логических переменных x1,x2,x3,x4,x5,x6,x7,x8,x9,x10, которые удовлетворяют всем перечисленным ниже условиям?
(x1 <> x2) or (x3 <> x4) = 1.
(x3 <> x4) or (x5 <> x6) = 1.
(x5 <> x6) or (x7 <> x8) = 1.
(x7 <> x8) or (x9 <> x10) = 1.
Приведите полное решение задачи с пояснениями
Answers & Comments
y1 or y2 = 1
y2 or y3 = 1
y3 or y4 = 1
y4 or y5 = 1
Количество наборов y1..y5, удовлетворяющих данным условиям - 13. Набор будет являться решением системы, если в нем нет идущих подряд нулей - тогда в каждой из пар (y1,y2), (y2,y3), (y3,y4), (y4,y5) будет хотя бы одна единица, т.е. все операции or также будут давать единицу. Можно перебрать такие наборы вручную:
11111, 11110, 11101, 11011, 11010, 10111, 10110, 10101,
01111, 01110, 01101, 01011, 01010
Либо воспользоваться формулой F(n) = F(n-1) + F(n-2), F(0) = 1, F(1) = 2; Тогда F(5) = 13. Здесь F(n) - количество последовательностей длины n, где нет двух идущих подряд нулей - их можно разбить на две группы, в одной на первой позиции стоит 1 (их F(n-1), т.к. оставшиеся элементы выбираются в соответствии с тем же правилом), в другой - 0 (их F(n-2), т.к. раз в последовательности нет двух идущих подряд нулей, на второй позиции обязана стоять единица).
Далее каждому значению y соответствуют две пары возможных значений x-ов. Т.е., например, y1 = 1 соответствуют x1 = 1, x2 = 0 и x1 = 0, x2 = 1, а y1 = 0 соответствуют x1 = 0, x2 = 0 и x1 = 1, x2 = 1.
В наборе y1..y5 каждому y соответствует два набора x -> всему набору y соответствует 2^5 = 32 набора x.
Всего 13 наборов y -> 13 * 32 = 416 наборов x.
Ответ: 416