728x90
<문제>
알파벳 대문자와 숫자(0~9)로만 구성된 문자열이 입력으로 주어집니다. 이때 모든 알파벳을 오름차순으로 정렬하여 이어서 출력한 뒤에, 그 뒤에 모든 숫자를 더한 값을 이어서 출력합니다.
예를 들어 K1KA5CB7이라는 값이 들어오면 ABCKK13을 출력합니다.
<입력 조건>
- 첫째 줄에 하나의 문자열 S가 주어집니다. (1 <=S의 길이 <=10,000)
<출력 조건>
- 첫째 줄에 문제에서 요구하는 정답을 출력합니다.
<문제 풀이>
- S에 숫자(0~9)가 있다면 sum_ 변수에 저장
- 문자라면 result 변수에 저장
<코드>
'''
K1KA5CB7
AJKDLSI412K4JSJ9D
'''
s = input()
sum_ = 0
result = ''
for i in sorted(s):
if i in '0123456789':
sum_ += int(i)
else:
result += i
print(result+str(sum_))
#220321
s = input()
num = 0
answer = ''
for i in sorted(s):
if i.isnumeric():
num += int(i)
else:
answer += i
answer += str(num)
print(answer)
<고쳐야 할 점>
- 문자.isalpha() 기억하기!
'두두의 알고리즘 > 문제' 카테고리의 다른 글
[이분탐색] 난이도2, Zoho 인터뷰 '정렬된 배열에서 특정 수의 개수 구하기' (Python) (0) | 2021.11.25 |
---|---|
[이분탐색] 프로그래머스 L4 '가사 검색' (Python) (0) | 2021.11.25 |
[구현] 난이도1, 백준 18406번 '럭키 스트레이트' (Python) (0) | 2021.11.25 |
[구현] 난이도1, 이취코 115p '왕실의 나이트' (Python) (0) | 2021.11.25 |
[구현] 난이도1, 이취코 113p '시각' (Python) (0) | 2021.11.25 |