Каково регулярное выражение для языка 0m1n, где m+n ровен?
Если вы имеете в виду строку 000 ... 111 ...
, где длина строки четная, вы можете использовать ^ (00) * (01)? (11) * $
Итак, вам нужно рассмотреть для нуля случаи, когда они нечетные и когда они четные. Это требует двух состояний, одно для четных нулей, другое для нечетных. Тогда для случая нечетных нулей вам нужно иметь 1 единицу, затем четное количество единиц. Для четного случая нужно просто четное количество единиц.
Легко написать DFA, но я не знаю, как его здесь изобразить, поэтому рискну предположить регулярное выражение:
(0 (00)* 1 (11)*) \/ (00)*(11)*