Dia Egg - Shugo Chara

Algorithm/이것이 취업을 위한 코딩테스트다

(기출 / 구현) 문자열 재정렬

별ㅇI 2023. 6. 6. 23:01
728x90
반응형

문자열 재정렬

알파벳 대문자와 숫자(0 ~ 9)로만 구성된 문자열이 입력으로 주어집니다. 이때 모든 알파벳을 오름차순으로 정렬하여 이어서 출력한 뒤에, 그 뒤에 모든 숫자를 더한 값을 이어서 출력합니다.

예를 들어 K1KA5CB7이라는 값이 들어오면 ABCKK13을 출력합니다.

 


입력 조건

  • 첫째 줄에 하나의 문자열 S가 주어집니다. ( 1≤ S의 길이 ≤ 10,000 )

출력 조건

  • 첫째 줄에 문제에서 요구하는 정답을 출력합니다.

입력 1

K1KA5CB7

출력 1

ABCKK13

입력 2

AJKDLSI412K4JSJ9D

출력 2

ADDIJJJKKLSS20

풀이

숫자를 더하는 변수와 알파벳을 모으는 변수를 분리시켰다. 어차피 알파벳은 sort함수로 한번에 정렬할 수 있으니 그냥 알파벳인가 아닌가에 따라 append하고 후에 정렬, 그리고 숫자의 합을 더한 값을 마지막으로 append했다.

 


코드

data = input()
num = 0
result = []
for i in range(len(data)):
    if ord('0')<=ord(data[i])<=ord('9'):
        num += int(data[i])
    else:
        result.append(data[i])
result.sort()
result.append(num)
print(*result,sep=(''))

 

728x90
반응형