난이도 : ●○○ | 풀이 시간 : 20분 | 시간 제한 : 1초 | 메모리 제한 : 128MB | 기출 : Facebook 인터뷰
문제
- 알파벳 대문자와 숫자(0~9)로만 이루어진 문자열이 주어진다.
- 이때 모든 알파벳을 오름차순으로 정렬해 출력한 뒤에 모든 숫자를 더한 값을 출력한다.
입력조건
- 첫째 줄에 하나의 문자열 S가 주어진다. (1<=S의 길이<=10,000)
출력조건
- 첫째 줄에 문제에서 요구하는 정답을 출력한다.
입력예시
K1KA5CB7
출력예시
ABCKK13
아이디어
- 입력된 문자열을 한 글자씩 확인한다.
- 숫자라면 num이라는 변수에 누적시킨다.
- 알파벳이라면 result라는 리스트에 append한다.
- result.sort()한 것을 출력하고 이어서 num을 출력한다.
- 한 번에 출력하기 위해 num을 str으로 변환한 뒤 result에 append()한다.
코드
s=input()
result=[]
num=0
for i in range(len(s)):
if s[i].isdigit():
num +=int(s[i])
else:
result.append(s[i])
result.sort()
result.append(str(num))
print("".join(result))
'Algorithm > [이코테] 알고리즘 유형별 기출문제' 카테고리의 다른 글
[이코테] DFS/BFS 문제 - 특정 거리의 도시 찾기 python (0) | 2023.10.28 |
---|---|
[이코테] 구현 - 문자열 압축 python (1) | 2023.10.23 |
[이코테] 구현 - 럭키 스트레이트 python (0) | 2023.10.23 |
[이코테] 그리디 - 볼링공 고르기 python (0) | 2023.10.23 |
[이코테] 그리디 - 만들 수 없는 금액 python (0) | 2023.10.23 |