Algorithm
11.11.(금) Programmers Java Lv1 자연수 뒤집어 배열로 만들기
콜라든포비
2022. 11. 11. 18:00
자연수 뒤집어 배열로 만들기
문제 설명
자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
제한 조건
- n은 10,000,000,000이하인 자연수입니다.
입력값
n : 12345
answer : {5,4,3,2,1}
class Solution {
public int[] solution(long n) {
int cnt = String.valueOf(n).length();
int[] answer = new int[cnt];
int idx = 0;
while(true){
answer[idx++] = (int)(n%10);
n/=10;
if(n==0) break;
}
return answer;
}
}
자료형에 주의를 기울여야하는 문제였다.
입력받는 n은 long형이고, answer는 int형의 배열이기 때문에 중간에 연산을 하면서 무조건 형변환을 해줘야한다.
우선 배열의 크기를 정하기 위해 자리수인 cnt 정수를 만들어서 구했다. 여거서 n을 문자열로 바꾸고, 바꾼 문자열의 길이로 자리수를 구했다.
그리고 저번에 풀었던 자릿수 더하기와 마찬가지로 n을 반복해서 10씩 나눴을때의 나머지를 순서대로 배열로 집어넣어서 완성했다.