자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
제한 조건
n은 10,000,000,000이하인 자연수입니다.
입출력 예
n | return |
---|---|
12345 | [5,4,3,2,1] |
https://school.programmers.co.kr/learn/courses/30/lessons/12932
class Solution {
public int[] solution(long n) {
String[] stringNList = String.valueOf(n).split("");
int[] answer = new int[stringNList.length];
for (int i = 0; i < stringNList.length; i++){
answer[i] = Integer.parseInt(stringNList[stringNList.length - i - 1]);
}
return answer;
}
}
class Solution {
public int[] solution(long n) {
String s = String.valueOf(n);
StringBuilder sb = new StringBuilder(s);
sb = sb.reverse();
String[] ss = sb.toString().split("");
int[] answer = new int[ss.length];
for (int i=0; i<ss.length; i++) {
answer[i] = Integer.parseInt(ss[i]);
}
return answer;
}
}
reverse()
를 사용해서 string을 뒤집은 것이 인상 깊었다. 🤓long -> String -> StringBuilder -> String
변환 과정이 필요하다는 점에서 코드의 복잡도 및 실행 속도는 비슷하였다.