Последние новости
04.09.24
Объявление
09.06.24
Результаты Олимпиады
03.04.24
Предварительные результаты финального тура
05.03.24
Проведение финального тура
01.01.24
Предварительные результаты
За круглым столом сидит n>2 человек. Каждый из них либо рыцарь, либо лжец. Рыцари всегда говорят только правду, а лжецы всегда лгут. Опишите способ построения логической схемы c n входами, которая принимает значение истина тогда и только тогда, когда каждый из сидящих за столом может произнести фразу «Оба моих соседа лжецы».
На логической схеме входы соответствуют людям: нули обозначают лжецов, а единицы рыцарей. Разрешается использовать логические элементы AND (и), OR (или), NOT (не) и XOR (исключающее или). Соседние входы соответствуют соседним людям, кроме того, поскольку стол круглый, самый верхний вход будем считать соседним с самым нижним.
Для иллюстрации Вашего решения Вы можете использовать манипулятор с тремя входами. Однако, оцениваться будет в первую очередь текст решения, автоматической проверки не производится.
Как мы знаем, рыцари могут сказать "Оба моих соседа лжецы" тогда и только тогда, когда с двух сторон сидят лжецы. То есть рассадка: 010. Лжецы же всегда врут, поэтому НЕ могут сказать "Оба моих соседа лжецы" тогда и только тогда, когда с двух сторон сидят лжецы. То есть рассадка "000" не удовлетворяет их условиям. На манипуляторе изображена схема для проверки условия для определенного человека (в данном случае - для центрального входа) . В этой схеме верхняя ветвь реализует проверку условия, если человек является рыцарем, нижняя - для лжеца и связующая операция "OR", так как это два разных случая. Для проверки условия с n входами требуется применить изображенную схему для каждого человека и объединить все операцией "AND", так как требуется, чтобы условие выполнялось для каждого человека.