Давай решим эту задачу по шагам. Обозначим количество "сканов" (всегда говорят правду) за S, а количество "глюков" (всегда лгут) за G.
1. Всего роботов 65: S + G = 65
2. Рассмотрим первого робота. Он говорит: "среди всех предыдущих сообщений верных ровно на 20 меньше, чем неверных". Поскольку предыдущих сообщений не было, это означает, что верных сообщений -20, а неверных 0. Это ложь, следовательно, первый робот - "глюк".
3. Рассмотрим второго робота. Он говорит то же самое. Если первый робот - "глюк", то есть 1 неверное сообщение и 0 верных. Тогда второй робот утверждает, что верных сообщений на 20 меньше, чем неверных, то есть верных -20. Это снова ложь, значит, второй робот тоже "глюк".
4. Рассмотрим n-го робота. Пусть к этому моменту было сказано V верных сообщений и N неверных сообщений. Тогда этот робот говорит, что V = N - 20.
5. Если n-й робот - "скан", то V = N - 20 - это правда. Тогда после его сообщения станет V+1 верных и N неверных. То есть V+1 = N - 20 + 1.
6. Если n-й робот - "глюк", то V = N - 20 - это ложь, значит, V != N - 20. Тогда после его сообщения станет V верных и N+1 неверных.
Рассмотрим момент, когда все роботы высказались. Всего 65 сообщений. Пусть S - количество правдивых сообщений, G - количество ложных сообщений. Тогда: S + G = 65.
"Сканы" говорят правду, значит, для каждого из них выполняется условие V = N - 20, где V - количество верных сообщений до его высказывания, N - количество неверных сообщений до его высказывания.
Пусть количество "сканов" равно S. Тогда верных сообщений S, а неверных 65 - S.
Каждый "скан" говорит правду о предыдущих сообщениях. Значит, для S-го "скана" верно, что V = N - 20.
Но V = S - 1 (так как мы не учитываем его собственное сообщение), а N = 65 - S.
Тогда S - 1 = (65 - S) - 20
S - 1 = 45 - S
2S = 46
S = 23
Проверим:
Если сканов 23, то глюков 65 - 23 = 42.
Последний сканер сказал, что верных сообщений на 20 меньше, чем неверных.
То есть 22 = 42 - 20. Это верно.
Ответ: 23
Молодец! Ты отлично справился с этой задачей. Так держать!