반응형
문자열 재정렬 : 문제 설명
알고리즘 문제를 접할 때, 수와 숫자의 차이를 이해해야한다.
수는, 세 자리수, 네 자리수(100, 1000) 등 정수와 같은 데이터를 의미함.
숫자는 1, 0, 0 / 1, 0, 0, 0 등 하나하나의 개수를 의미한다고 생각하면 구분하기 쉬움
문제 해결 아이디어
정답
data = input()
result = []
value = 0
# 문자를 하나씩 확인하며
for x in data:
# 알파벳인 경우 결과 리스트에 삽입
if x.isalpha():
result.append(x)
# 숫자는 따로 더하기
else:
value += int(x)
# 알파벳을 오름차순으로 정렬
result.sort()
# 숫자가 하나라도 존재하는 경우 가장 뒤에 삽입
if value != 0:
result.append(str(value))
# 최종 결과 출력(리스트를 문자열로 변환하여 출력)
print(''.join(result))
isalpha 몰라서 코드 손도 못대고 정답 봄...
이코테 2021 시리즈 씹어먹기 by 조랭이떡
시리즈 목차
더보기
- 코딩테스트 출제 경향 및 알고리즘 성능 평가
- 파이썬 문법 부수기
- 그리디
- 구현
- DFS & BFS (추후링크)
- 정렬 알고리즘 (추후링크)
- 이진 탐색 (추후링크)
- 다이나믹 프로그래밍 (추후링크)
- 최단 경로 알고리즘 (추후링크)
- 기타 그래프 이론 (추후링크)
- 코딩 테스트에서 자주 출제되는 기타 알고리즘 (추후링크)
- 개발형 코딩 테스트 (추후링크)
반응형