https://school.programmers.co.kr/learn/courses/30/lessons/140108
딕셔너리를 사용하여 해결하였다. 첫 글자와 다른 글자를 구별하기 위해 start 변수에 첫 글자를 기록하도록 하였다.
from collections import defaultdict
def solution(s):
answer = 0
start = None
dd = defaultdict(int)
for s_ in s:
if start == None:
start = s_
if start == s_:
dd[s_] += 1
else:
dd['other'] += 1
if dd[start] == dd['other']:
answer += 1
start = None
dd.clear()
if dd[start] != dd['other']:
answer += 1
return answer
print(solution("banana"))
print(solution("abracadabra"))
print(solution("aaabbaccccabba"))
print(solution("xxxxxoooooxox")) # 3
'Coding Test > 프로그래머스' 카테고리의 다른 글
[프로그래머스] / [Level 1] / [Python] 둘만의 암호 (0) | 2024.01.16 |
---|---|
[프로그래머스] / [Level 1] / [Python] 대충 만든 자판 (0) | 2024.01.15 |
[프로그래머스] / [Level 1] / [Python] 숫자 짝꿍 (0) | 2024.01.12 |
[프로그래머스] / [Level 2] / [Python] 디펜스 게임 (0) | 2024.01.11 |
[프로그래머스] / [Level 1] / [Python] 옹알이 (2) (0) | 2023.10.31 |