알고리즘 분류)
이번 문제는 "정규표현식"을 이용한 풀이를 진행할 것이다
※정규표현식 : 복잡한 문자열을 처리할 때 사용하는 기법으로, 파이썬 만의 고유 문법이 아니라 문자열을 처리하는 모든 곳에서 사용한다. 정규 표현식을 배우는 것은 파이썬을 배우는 것과는 또 다른 영역의 과제이다.
문제에서는 묶음으로 된 0의 구역, 묶음으로 된 1의 구역, 둘중 뒤집는 구역이 적은 쪽을 택하면 된다.
re.findall("0+",문자열)
정규표현식은 내장 모듈인 're'를 import해줌으로서 사용할 수 있다
위의 식은 문자열에서 '0'이 1번이상 반복되는 문자열을 찾아준다
문자열입력1)
11001100110011000001
결과출력1)
['00', '00', '00', '00000']
동일한 방법으로 '1'이 1번이상 반복되는 구역도 찾아주며, 둘중 최소값이 정답이 된다.
import re
Text = input()
print(min(len(re.findall("0+",Text)),len(re.findall("1+",Text))))