갱스터하우스

[Python] Lv1.문자열 내림차순으로 배치하기 본문

코테 문제/프로그래머스

[Python] Lv1.문자열 내림차순으로 배치하기

승갱 2022. 4. 9. 15:46

https://programmers.co.kr/learn/courses/30/lessons/12917

 

코딩테스트 연습 - 문자열 내림차순으로 배치하기

문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로

programmers.co.kr

 

 

 

문제 설명

문자열 s에 나타나는 문자를 큰 것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.

s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.

 
제한 사항
  • str은 길이 1 이상인 문자열입니다.

 

나의 접근 방법 및 풀이

큰 것부터 작은 순서대로 정렬해야하므로 reverse를 사용해야겠다고 생각했다.

처음에 문자열을 정렬하는데 있어, 'for i in s'를 사용해야 하나 생각했지만, 어제 다른 문제를 풀면서 sort()는 리스트를 정렬하지만, sorted()는 문자열도 정렬해주고 결과를 리스트화해주기 때문에 굳이 for() 문과 sort()를 사용하지 않고, sorted()와 reverse를 사용하여 정렬하고 리스트화 된 것을 문자열로 반환하기 위해서 join함수를 써주었다.

def solution(s):
    return "".join(sorted(s, reverse=True))