Олимпиадная задача про рыцарей и лжецов На острове живут рыцари, которые всегда говорят правду, и лже- цы, которые всегда лгут. Однажды в ряд встали 400 жителей острова, среди ко- торых есть хотя бы один рыцарь и хотя бы один лжец. Каждый стоящий в ряду сказал: «Количество лжецов с одной стороны от меня делится на количество лжецов с другой стороны от меня» (никакое число не делится на ноль). Сколько всего в ряду рыцарей?
Предположим, что существует k лжецов в полосе слева от его позиции и n лжецов в полосе справа. Таким образом, количество лжецов с одной стороны от него равно k, а с другой стороны - n. Следовательно, k + n = 400 - 1 = 399.
Теперь, поскольку все рыцари всегда говорят правду, количество лжецов с одной стороны от рыцаря всегда будет равно количеству лжецов с другой стороны. Значит, k = n.
Таким образом, мы находим два числа, которые в сумме дают 399 и равны друг другу. Это числа 199 и 200. То есть, слева и справа от рыцаря стоят по 199 лжецов.
Таким образом, в ряду 400 жителей находим 200 рыцарей, так как остальные 200 - это лжецы.
Предположим, что существует k лжецов в полосе слева от его позиции и n лжецов в полосе справа. Таким образом, количество лжецов с одной стороны от него равно k, а с другой стороны - n. Следовательно, k + n = 400 - 1 = 399.
Теперь, поскольку все рыцари всегда говорят правду, количество лжецов с одной стороны от рыцаря всегда будет равно количеству лжецов с другой стороны. Значит, k = n.
Таким образом, мы находим два числа, которые в сумме дают 399 и равны друг другу. Это числа 199 и 200. То есть, слева и справа от рыцаря стоят по 199 лжецов.
Таким образом, в ряду 400 жителей находим 200 рыцарей, так как остальные 200 - это лжецы.