본문 바로가기

프로그래머스/JAVA

프로그래머스) 자연수 뒤집어 배열로 만들기 (JAVA)

문제 설명

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

제한 조건

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

입출력 예

 

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

 

해결과정

ArrayList를 사용하면 따로 n의 길이를 할당하지 않아도 되기 때문에 이 방식을 사용하였다.

 

정답 코드

import java.util.ArrayList;
class Solution {
    public int[] solution(long n) {
        ArrayList<Integer> ans = new ArrayList<>();
        while(n != 0) {
        	ans.add((int)(n%10));
        	n /= 10;
        }
        return ans.stream().mapToInt(i -> i).toArray();
    }
}

 

 

이클립스용 실행 코드

import java.util.ArrayList;
import java.util.Arrays;

public class Natural_Number_Reverse {
	public static void main(String[] args) {
		long n = 12345;
		int[] ans = solution(n);
		System.out.println(Arrays.toString(ans));
	}

	private static int[] solution(long n) {
        ArrayList<Integer> ans = new ArrayList<>();
        while(n != 0) {
        	ans.add((int)(n%10));
        	n /= 10;
        }
        return ans.stream().mapToInt(i -> i).toArray();
	}
}