
어려운건 아닌데, 이런 숫자 변환 관련해서 풀이를 남기고 싶었다.
숫자를 자릿수로 끊는경우, 내가 주로 사용하는건 두가지 방법이 있다. 첫번째로 10씩 반복해서 나눠주면서 나머지를 추출, 그후 원래 변수는 10을 나눈다. -> while문으로 변수값이 0이면 탈출.
String으로 변환, charAt을 활용한다.
개인적으로는 후자가 더 간편하다.
단, 이 문제는 자릿수로 접근하면 더 편할 것 같았다. 거꾸로 세면 되니까, 자릿수대로 넣어주면 되기 때문.
일단 아무생각없이 String을 이용했다.
class Solution {
public int[] solution(long n) {
String str = String.valueOf(n);
int l = str.length();
int[] answer = new int[l];
for (int i=0; i<l; i++) {
answer[i] = Character.digit(str.charAt(l-i-1), 10);
}
return answer;
}
}'프로그래머스 문제풀이 > Level 1' 카테고리의 다른 글
| 두 정수 사이의 합 (자바, Java) (0) | 2022.12.23 |
|---|---|
| 나머지가 1이 되는 수 찾기 (자바, Java) (0) | 2022.12.23 |
| 정수 내림차순으로 배치하기 (자바, Java) (0) | 2022.12.22 |
| x만큼 간격이 있는 n개의 숫자 (자바, Java) (0) | 2022.12.17 |
| 정수 제곱근 판별 (자바, Java) (0) | 2022.12.17 |