[프로그래머스 Level1] 정수 내림차순으로 배치하기 - 런타임 에러 해결


  • 문제 설명

    함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.

  • 제한조건

    n은 1이상 8000000000 이하인 자연수입니다.

  • 입출력 예

    nreturn
    118372873211

코드

def solution(n):
    ls = list(str(int(n)))
    ls.sort(reverse = True)
    return int("".join(ls))

풀이

  • lower()을 사용해 모두 소문자로 변경
  • count()를 사용해 'p','y'를 개수를 찾음
  • if문을 사용해 갯수가 같은지 판단

결과

여담

  • 풀면서 정말 어려웠다...
def solution(n):
    ls = list(str(n))
    ls.sort(reverse = True)
    return int("".join(ls))
  • 처음에는 이 코드로 작성했으나 계속 이런식 런타임 에러가 나왔다.
  • 여기저기 아무리 찾아봐도 답을 모르겠어서 이렇게 저렇게 하다가 얻어 걸렸다...
  • 조건에도 자연수라고 나와있는데 왜 형변환 하는지 모르겠다.. 고민을 더 해봐야겠다...

좋은 웹페이지 즐겨찾기