문제

이것이 취업을 위한 코딩 테스트다 with 파이썬 (나동빈 저)

  • 알파벳 대문자와 숫자(0~9)로만 이루어진 문자열이 주어진다.
  • 이 문자열을 알파벳 오름차순으로 정렬하고, 숫자는 모두 더해서 뒤에 붙여라.
# 입력 예시
K1KA5CB7

# 출력 예시
ABCKK13

풀이

파이썬 sorted 함수는 숫자와 문자가 섞여있는 리스트에서
숫자를 앞쪽으로, 문자를 뒤쪽으로 정렬한다.
아스키코드 값을 기준으로 정렬시키는 것으로 예측 된다.

정렬된 리스트를 앞에서부터 훑으면서
문자(알파벳)를 만나면 해당 인덱스 값으로
결과를 출력하면 된다.

data = sorted(input())

for i in range(len(data)):
    if data[i].isalpha(): break

print("".join(data[i:])+str(sum(map(int, data[:i]))))

댓글남기기