728x90

문제 159. (2022-01-20)

이코테 구현 기출문제08. 문자열 재정렬

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

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

입력 조건

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

출력 조건

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

❧ 입력 예시

K1KA5CB7

❧ 출력 예시

ABCKK13

❧ 정답

 

 

isdigit()함수로 문자열 모두 검사하며 숫자를 판단한다.


✔️ 숫자가 등장할 경우, 해당 숫자를 변수 total에 해당 값을 더한다.

✔️ 알파벳일 경우 문자열 변수 alpha에 해당 알파벳 값을 덧붙인다.

이후 alpha를 오름차순 정렬을 거쳐서 알파벳 순으로 정렬을 한다.
(sort 함수 적용 시, 영어의 경우 아스키 코드 값에 따라 A~Z, a~z로 정렬된다.)

 

마지막에 정렬된 알파벳alpha와 숫자 합total을 함께 덧붙여서 출력한다.

728x90