Chapter02/코딩테스트
[코딩테스트] 자연수 뒤집어 배열로 만들기
EmmaDev_v
2025. 3. 9. 10:15
문제 설명
자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
제한 조건
n은 10,000,000,000이하인 자연수입니다.
입출력 예
n | return |
12345 | [5,4,3,2,1] |
나의 풀이
-> 배열로 바꾸기, 같은 크기의 배열 선언 (거꾸로 뽑을 용도).
반복문 뒤에서 부터 돌면서 하나씩 빼기 (2번째배열값 늘려가면서 넣)
class Solution {
public int[] solution(long n) {
int[] intArr = String.valueOf(n).chars().map(c -> c - '0').toArray();;
int[] reverseArr = new int[intArr.length];
int j = 0;
for (int i = intArr.length - 1; i >= 0; i--) {
reverseArr[j] = intArr[i];
j++;
}
return reverseArr;
}
}
다른 사람의 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/12932/solution_groups?language=java
import java.util.stream.IntStream;
class Solution {
public int[] solution(long n) {
return new StringBuilder().append(n).reverse().chars().map(Character::getNumericValue).toArray();
}
}
스트림을 이렇게 찰떡같이 쓰다니, ,,, !
반응형