https://www.acmicpc.net/problem/1439
처음엔 변화부분 카운트해서 패턴을 보고 다른 방식을 풀었지만, 다음 처럼 푸는게 우선 논리적으로 보임
문자열에서 0연속 부분과 1연속 부분 중 최소 개수를 알아야 함
유형: greedy
s = input()
zero = 0
one = 0
if s[0] == '0':
zero += 1
else:
one += 1
for i in range(1, len(s)):
if s[i] != s[i-1]:
if s[i] == '0':
zero += 1
else:
one += 1
print(min(zero, one))'Background > Algorithm' 카테고리의 다른 글
| 특정 거리의 도시 찾기(백준, 18352) (0) | 2025.11.09 |
|---|