난이도🖤🤍🤍 | 풀이시간 20분 | 제한시간 1초 | 메모리제한 128MB | 기출 Facebook인터뷰
빠져있는 부분: 숫자가 하나도 포함되지 않았을 때는 숫자가 출력이 되면 안되는데 내 코드는 input이 알파벳으로만 구성되어 있어도 마지막에 0이 딸려 나온다! 이를 수정해야한다.
s = input()
alpha = []
sum = 0
for i in range(len(s)):
# 알파벳
if s[i].isalpha():
alpha.append(s[i])
# 숫자
else:
sum += int(s[i])
# 알파벳 정렬
alpha.sort()
# 출력
for x in alpha:
print(x, end='')
print(sum)
isalpha() 이용!
요구하는 내용을 그대로 구현
문자열이 입력되었을 때 문자를 하나씩 확인한 뒤에, 숫자인 경우 따로 합계를 계산하고, 알파벳인 경우 별도의 리스트에 저장한다.
그래서 결과적으로 리스트에 저장된 알파벳들을 정렬해 출력하고, 합계를 뒤에 붙여서 출력하면 정답 판정을 받을 수 있다.
data = input()
result = []
value = 0
# 문자를 하나씩 확인하며
for x in data:
# 알파벳인 경우 결과 리스트에 삽입
if x.isalpha():
result.append(x)
# 숫자는 따로 더하기
else:
value += int(x)
# 알파벳을 오름차순으로 정렬
result.sort()
# 숫자가 하나라도 존재하는 경우 가장 뒤에 삽입
if value != 0:
result.append(str(value))
# 최종 결과 출력(리스트를 문자열로 변환하여 출력)
print(''.join(result))