이호진
문자, 숫자 재정렬하기 (2021/02/19) 본문
이 문제는 문자와 숫자가 섞여있는 문자열을 받아서 문자는 문자끼리 모으고 숫자는 다 더해서 정렬 후 출력하는 문제다.
예를들어 CBA32ZXY12 라는 문자열을 입력받으면 ABCXYZ8을 출력한다.
입력받은 문자열을 for문을 이용하여 하나씩 문자는 문자끼리 append하고 숫자는 숫자끼리 value라는 값에 더해준다.
그리고 문자를 오름차순 정렬 후 문자와 숫자를 더하고 출력한다.
data = input()
CBA32ZXY12
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))
ABCXYZ8
if value !=0 을 이용하여 숫자가 존재하는지 아닌지를 검사하고 print(''.join(result))를 이용해 리스트를 문자열로 변환하여 출력할 수 있다.
문자열 재정렬
'주요 알고리즘' 카테고리의 다른 글
탐색 알고리즘 BFS (2021/02/21) (0) | 2021.02.21 |
---|---|
탐색 알고리즘 DFS (2021/02/21) (0) | 2021.02.21 |
시각 - 완전탐색 (2021/02/19) (0) | 2021.02.19 |
상하좌우 - 벡터 구현문제 (2021/02/18) (0) | 2021.02.18 |
1이 될 때 까지 - 그리디 알고리즘 (2021/02/18) (0) | 2021.02.18 |