728x90
반응형
[문제]
자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. *제한 사항* n은 10,000,000,000이하인 자연수입니다. |
[풀이]
import java.util.Arrays;
class Solution {
public int[] solution(long n) {
String s =""+n;
int[] answer = new int[s.length()];
int cnt=0;
while(n>0) {
answer[cnt]=(int)(n%10);
n/=10;
cnt++;
}
return answer;
}
public static void main(String[] args){
Solution s = new Solution();
}
}
-int 변수의 길이를 세는 가장 쉬운 방법은 String으로 간단하게 전환한 뒤 length() 메소드를 이용하면 된다.
""+n 은 문자열로 변환하는 쉬운 방법이다.
다른 방법으로는 new StringBuilder().append(n) 혹은 Integer.toString 가 있다.
그 다음 String 길이대로 배열을 선언해 mod 10을 해주어 한 자리씩 떨궈내고 차곡차곡 배열에 담는다.
(12345가 입력값이면 %10 = 5 , 1234.5 % 10 = 4.5 ... -> 소숫점은 int형이라 생략)
반응형
'alorithm > programmers' 카테고리의 다른 글
[JAVA/프로그래머스] Lv1. 나누어 떨어지는 숫자 배열 (0) | 2023.04.26 |
---|---|
[JAVA/프로그래머스] Lv1. 서울에서 김서방 찾기 (0) | 2023.04.26 |
[JAVA/프로그래머스] Lv1. 문자열 내 p와 y의 개수 (0) | 2023.04.14 |
[JAVA/프로그래머스] Lv1. 문자열을 정수로 바꾸기 (0) | 2023.04.13 |
[JAVA/프로그래머스] Lv1. 두 정수 사이의 합 (0) | 2023.04.13 |