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

velg·2021년 5월 13일

문제링크

문제 요약

'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 중 가장 작은 값(최소 횟수)를 출력하였다.
profile
초보 개발자

0개의 댓글