Хамелеоны. Стихозадача

Павел Кикоть
Хамелеоном называют
Всё, что окраску изменяет.
Не слушай глупого вранья:
На самом деле это я.

Нас много ящериц по свету.
Мы можем стать любого цвета,
Чтоб не увидели враги.
Ты нас люби и береги.

Ещё шепну тебе на ушко:
Мы так общаемся друг с дружкой.
Ты говорить слова привык,
А игры цвета — наш язык.

Мне как-то встретился братишка,
Известный врун и хвастунишка,
Поведал: "Я нашёл одну
Хамелеонову страну.

Вначале я увидел, к слову,
Пятнадцать красных, пять лиловых
И десять жёлтых ящерят.
У них существовал обряд:

Как только разноцветных двое
Хамелеонов меж собою
Встречаются в густой траве,
То принимают третий цвет.

Смотрю однажды — что же это?
Все одинакового цвета!"
Я уличил его во лжи,
А он: "Попробуй докажи,

Что это никогда не будет!"
Мы ждём, что кто-то нас рассудит,
Быть может, ты или друзья:
Кто прав был — братец или я?


Ответ: Прав хамелеон-рассказчик, а братец врал.


Доказательство.  Всего в стране 15 + 5 + 10 = 30 хамелеонов (это важно!) Пусть a и  b
— соответственно количество красных и лиловых хамелеонов в тот или иной момент времени. В начальный момент a = 15, b = 5,  впоследствии эти величины могут изменяться.
Введём величину F = a - b и посмотрим, как изменяется F при исполнении ритуала. Возможны перекрашивания:
красный + лиловый = 2 жёлтых ==> a и b уменьшаются на 1 ==> F не изменяется;
красный + жёлтый = 2 лиловых ==> a уменьшается на 1, b увеличивается на 2  ==> F = a-b  уменьшается  на 3;
лиловый + жёлтый = 2 красных  ==> a увеличивается на 2, b уменьшается на 1 ==> F = a-b увеличивается на 3.
В любом случае свойство F делиться или не делиться на 3 без остатка  не изменяется.
В начальный момент F = 15 - 5 = 10 — на 3 без остатка не делится.
В заключительный момент, если верить брату:
если все они красные, то a = 30, b = 0, F = 30 - 0 = 30 — делится на 3 без остатка;
если все они лиловые, то a = 0, b = 30, F = 0 - 30 = -30 — делится на 3 без остатка;
если все они жёлтые, то a = 0, b = 0, F = 0 - 0 = 0 — делится на 3 без остатка.
Если бы братец был прав, то после некоторой встречи с величиной F случилась бы чудесная метаморфоза (F стало бы делиться на 3), чего, как мы доказали, быть не может.

Кстати. Величина, которая не изменяется при любых преобразованиях, называется инвариантом. У нас инвариантом будет остаток от деления F на 3.