코딩테스트

[프로그래머스] 자릿수 더하기, 정수 내림차순으로 배치하기

SigmoidFunction 2021. 12. 7. 13:31
728x90

문제링크 : https://programmers.co.kr/learn/courses/30/lessons/12931

 

코딩테스트 연습 - 자릿수 더하기

자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한사항 N의 범위 : 100,000,000 이하의 자연수 입출

programmers.co.kr

 

 

 

넘 쉬웠다.

 

def solution(n):
    answer = 0
    n = str(n)
    for i in n:
        answer += int(i)
    return answer

꼼수긴 한데 문자열로 바꿔주고 각 글자 하나씩 들여와서 int로 바꿔주고 더해준다.

 

Simple

 

다른 사람들도 보니까 대부분 이렇게 풀었다.

 

 

 

정수 내림차순으로 배치하기

문제링크 : https://programmers.co.kr/learn/courses/30/lessons/12933

 

코딩테스트 연습 - 정수 내림차순으로 배치하기

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

programmers.co.kr

 

붙어있는 숫자 정렬은 뭐다?

문자로 바꿔서 정렬하면 되지 ㅋ

 

def solution(n):
    n = str(n)
    n = sorted(n, reverse=True)
    answer = int("".join(n))
    return answer

소트하면 문자가 들어간 리스트기 때문에 하나로 합쳐주고 int형으로 변환해줘야 답이 나온다.

728x90