프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
text = list(input())
x = text[0]
cnt_x=0
cnt_diff=0
result=0
i = 0
while True:
try:
if x == text[i]:
cnt_x += 1
else:
cnt_diff +=1
if cnt_x == cnt_diff:
print(''.join(text[0:i+1]), end=' - ')
text[0:i+1]='' #해당 위치까지의 텍스트 삭제
result += 1
cnt_x = 0
cnt_diff = 0
i=0
x=text[0]
else:
i += 1
if len(text)==0: #분리할 텍스트가 남아있지 않으면 중단
break
except:
break #출력은 끝났으나 텍스트가 남아있을 경우 오류 발생
print(result)
def solution(s):
res = 0
while s:
first = s[0]
first_cnt = 1
another_cnt = 0
for i in range(1, len(s)):
if s[i] == first:
first_cnt += 1
else:
another_cnt += 1
if first_cnt == another_cnt:
break
res += 1
s = s[first_cnt+another_cnt:]
return res
def sol(s):
result = 0 # 분해한 문자열의 개수
check = '' # 빈 문자열
for i in s: # s 한글자씩 i로 만듬
check += i # 빈 문자열에 i 넣음
if len(re.findall(check[0], check)) == len(re.findall(f'[^{check[0]}]', check)): # 첫번째 글자의 개수랑 그 외의 글자의 개수가 같으면
check = '' # 문자열 초기화
result += 1 # 결과 1 더해줌
return result + bool(check) # 문자열 남아있으면 check에 1 더함
'코딩테스트 연습' 카테고리의 다른 글
[알고리즘]DFS, BFS 연습문제 (0) | 2023.03.15 |
---|---|
[python/C++] 가장 큰 정사각형 찾기 / 동적 프로그래밍(DP) (0) | 2023.03.11 |
[파이썬] 백준: 문자열 연습문제 (0) | 2023.01.30 |
[파이썬] 백준: 1차원 배열 연습문제 (0) | 2023.01.24 |
[파이썬] 백준: 반복문 연습 (0) | 2023.01.20 |