Задача

Припишем каждому, стоящему в очереди, «1» или «0», в зависимости от того, голосует он «за» или «против». Известно, что рядом с каждым человеком (непосредственно впереди его в очереди или сзади) есть человек, голосующий «за». Постройте регулярное выражение, описывающее все такие наборы из 0 и 1, или докажите, что это невозможно.

Решение участника

Первый символ может быть каким угодно, а второй обязательно 1. Третий символ должен быть 1 если первый 0 и любым если первый 1. Заметим, что мы не можем использовать условный оператор "если" в регулярных выражениях, поэтому построить регулярное выражение, которое подходило бы под все примеры условия невозможно. Я привела пример того, как можно было бы попытаться это сделать ((1+0)1(1+0+_)*), но под это также подходят некоторые контрпримеры.