// PascalABC.NET 3.1, сборка 1204 от 24.03.2016begin var lvl:=0; var s:= 'EBEEEEEBEEEBEEEEBEEEEEEEBBEEEEEEBBEBEEBBEBBEBEEEEBBBBEEBEEEEEEEBEEBBBEEBBBEEEEBBEEBEEEEBBEBBBBEBEBEE'; var predE:=false; foreach var c in s do if c='E' then begin if predE then begin predE:=false; lvl+=1 end else predE:=true end else if c='B' then begin predE:=false; lvl+=1 end; Writeln(lvl,' level')end.
Результат выполнения программы63 levelИ второй вариант, "как не учат в школе":// PascalABC.NET 3.1, сборка 1204 от 24.03.2016begin var s:= 'EBEEEEEBEEEBEEEEBEEEEEEEBBEEEEEEBBEBEEBBEBBEBEEEEBBBBEEBEEEEEEEBEEBBBEEBBBEEEEBBEEBEEEEBBEBBBBEBEBEE'; Writeln(Regex.Matches(s,'E[EB]|B').Count,' Level')end.
Результат выполнения аналогичный.