본문 바로가기

코딩테스트/Programmers

[Programmers/프로그래머스]자연수 뒤집어 배열로 만들기

728x90
반응형

문제 설명

자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를 들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.

제한 조건
  • n은 10,000,000,000이하인 자연수입니다.
입출력 예
n return
12345 [5,4,3,2,1]

풀이

이 문제는 입력받은 n의 각 자리수를 거꾸로 뒤집어 리스트 형태로 반환하는 문제이다.

그래서 먼저 n의 각 자리 숫자를 리스트로 얻을 필요가 있다.

  • list(), str() 함수를 사용해 n의 각 자리 숫자를 리스트로 만들 수 있다.

이렇게 만들어진 리스트를 reversed() 함수로 거꾸로 뒤집는다.

리스트 안의 요소들은 아직 문자열 타입이기 때문에 map함수를 통해 int() 함수를 매핑해 정수 타입으로 변경한다.

map함수는 반환 타입이 map 객체이기 때문에 list() 함수로 다시 리스트로 변경해줘야 한다. 

이렇게 만들어진 리스트를 반환하면 된다.

def solution(n):
    return list(map(int,reversed(list(str(n)))))
728x90
반응형