본문 바로가기

자연수 뒤집어 배열로 만들기

programmers code review/_step1 2021. 8. 17.
728x90

프로그래머스 1단계 Java 자연수 뒤집어 배열로 만들기 문제입니다.


문제 설명

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

 

제한 조건

  • n은 10,000,000,000이하인 자연수입니다.

입출력 예

n return
12345 [5,4,3,2,1]

 

문제 해결 방법

① 자연수 n의 길이만큼 저장하여 반환할 배열을 선언

② 자연수 n을 문자 1개씩 분할하여 Character형 배열에 대입

③ 역순으로 배열에 대입

※ 대입시 - '0' 계산을 하는 이유 ▶ Character형 문자를 숫자로 빠르게 전환하기 위해

    예시) '1' - '0' = 1

            '7' - '0' = 7


더보기
class Solution {
    public int[] solution(long n) {
    	// ① 자연수 n의 길이만큼 저장하여 반환할 배열을 선언
        int[] answer = new int[Long.toString(n).length()];
        // ② 자연수 n을 문자 1개씩 분할하여 Character형 배열에 대입
        char[] temp = Long.toString(n).toCharArray();
		// ③ 역순으로 배열에 대입
		for (int i = temp.length - 1; i >= 0; i--) {
			// ※ 대입시 - '0' 계산을 하는 이유 ▶ Character형 문자를 숫자로 빠르게 전환하기 위해
			answer[temp.length - i - 1] = (temp[i]) - '0';
		}
        return answer;
    }
}

 

※ 위 코드는 해결 방법 중 한가지이며 더 효율적인 코드가 있을 수 있습니다.

 

문제 풀어보기 ▶ https://programmers.co.kr/learn/courses/30/lessons/12932?language=java
 

코딩테스트 연습 - 자연수 뒤집어 배열로 만들기

자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 조건 n은 10,000,000,000이하인 자연수입니다. 입출력 예 n return 12345

programmers.co.kr

'programmers code review > _step1' 카테고리의 다른 글

이상한 문자 만들기  (0) 2021.08.17
자릿수 더하기  (0) 2021.08.17
정수 내림차순으로 배치하기  (0) 2021.08.13
정수 제곱근 판별  (0) 2021.08.13
제일 작은 수 제거하기  (0) 2021.08.13

댓글