문제풀이) 백준 - 1439 / 뒤집기

문제링크

문제 요약

'0', '1'로 이루어진 문자열에서 연속된 문자를 최소한으로 뒤집어 모든 문자가 같도록 만들어라

어떻게 풀어야 할까?

같은 문자가 이어져 있는 부분을 묶어 하나라고 생각하고 '0', '1' 중 더 적게 뒤집어도 되는 쪽의 
횟수를 세어 출력하면 될 것 같다

코드

s = input()
cur = s[0]

dict = {'0': 0 ,'1': 0}
dict[s[0]] += 1

for c in s[1:]:
  if cur != c:
    dict[c] += 1
    cur = c

print(min(dict.values()))

코드 풀이

dict를 사용해서 key에 문자 '0', '1'을 넣고, value에 갯수를 넣어 풀이하였다.
line 12. min(dict.values())를 통해 value 중 가장 작은 값(최소 횟수)를 출력하였다.

좋은 웹페이지 즐겨찾기