https://school.programmers.co.kr/learn/courses/30/lessons/12933
이 문제는 join함수를 사용하면 편리하다. join함수는 이전에 정리해놓은 글이 있으니 참고하자.
https://vegetableworld.tistory.com/123
처음에는 조인함수를 사용하여 다음과 같이 풀었다.
def solution(n):
L = list(map(int, str(n)))
R = sorted(L, reverse=True)
result = ''.join(R)
return result
하지만 타입에러가 나버린다.. 이유는?
join함수는 문자열로 이루어진 리스트의 원소들을 합쳐주는 역할을 한다. 하지만, n은 int형태의 정수이므로 join문을 쓰기에는 적절하지 않았던 것이다. 따라서, join문을 다음과 같이 수정해주자.
def solution(n):
L = list(map(int, str(n)))
R = sorted(L, reverse=True)
result = ''.join(str(i) for i in R)
return result
하지만 이번에는 문법에는 문제가 없었으나, 테스트케이스를 통과하지 못했다.
문제는 join문은 문자열의 형태로 반환한다는 것이었다. 따라서, 정수형으로 바꿔주면 해결된다.
def solution(n):
L = list(map(int, str(n)))
R = sorted(L, reverse=True)
result = int(''.join(str(i) for i in R))
return result
'Algorithm > Programmers lv.1' 카테고리의 다른 글
[프로그래머스] 두 정수 사이의 합 (0) | 2024.07.04 |
---|---|
[프로그래머스] 정수 제급곤 판별(feat.정수인지 아닌지 확인하는 법) (0) | 2024.07.02 |
[프로그래머스] 자연수 뒤집어 배열로 만들기 (0) | 2024.07.02 |
[프로그래머스] 자릿수 더하기 (feat.자연수를 배열로 나열하는 법) (0) | 2024.07.02 |
[프로그래머스] 문자열을 정수로 바꾸기 (0) | 2024.07.01 |