오랑우탄의 반란
프로그래머스 | 문자열 나누기 (파이썬) 본문
반응형
오늘도 오랑이는 문제를 풉니다.
문자열 나누기
풀이 과정
- s의 각 글자 i iterate 해서 첫 문자 x와 같은지 비교
- 같으면 same +=1
- 다르면 diff +=1
- same = diff 이면 answer += 1, same&diff 값 초기화, x=i
우선 answer, same, diff 를 모두 0으로 설정해두고 시작합니다.
처음에는 answer 와 same 을 1로 두고 시작했었는데, 이럴 경우 첫 번째 x에 대해 중복으로 same이 카운트되기 때문에 틀립니다.
또한 반복문 내에서 처음에는 same==diff 조건을 i==x 이후에 뒀는데 이렇게 되면 초기화가 제대로 이루어지지 않기 때문에 순서를 아래와 같이 해야 합니다.
for i in s:
if same == diff:
answer +=1
same = diff = 0
x=i
if i==x:
same+=1
else:
diff+=1
최종 코드
def solution(s):
answer = 0
same = diff = 0
for i in s:
if same == diff:
answer +=1
same = diff = 0 # 초기화
x=i
if i==x:
same+=1
else:
diff+=1
return answer
오랑우탄이 영어를 하고 오랑이가 코드마스터가 되는 그날까지~
반응형
'PYTHON > 프로그래머스' 카테고리의 다른 글
프로그래머스 | 둘만의 암호 (파이썬) 알파벳 순환 (0) | 2024.08.19 |
---|---|
프로그래머스 | 대충 만든 자판 (파이썬) (0) | 2024.08.16 |
프로그래머스 | 체육복 (파이썬) 그리디, SET 차집합 (0) | 2024.08.12 |
프로그래머스 | 숫자 짝꿍 (파이썬) SET 교집합 (0) | 2024.08.08 |
프로그래머스 | 옹알이(2) (파이썬) permutation, 정규표현식 fullmatch (0) | 2024.08.07 |