- 풀이법n을 각 자리에 맞춰서 거꾸로 배열에 넣어줘야 하기 때문에 길이를 알아야한다따라서 n을 String으로 변환하여 길이를 알아낸 후 아스키 코드에 맞게 빼주어서 반대로 넣어준다
- 코드
import java.util.*;
import java.io.*;
class Solution {
public int[] solution(long n) {
//String으로 변환해주기
//Wrapper Class인 Long.toString 을 사용
String str = Long.toString(n);
int [] answer = new int [str.length()];
//배열에 넣어줄 기준이 될 idx
int idx = 0;
//str과 answer의 idx를 반대로 하여
//반복문을 돌려 각 인덱스에 원소를 넣어준다
//idx는 answer 배열의 기준 값이기 때문에
//반복문 한번 돌 때마다 ++해줘야 함
for(int i=str.length()-1; i>=0; i--) {
answer[idx] = str.charAt(i)-'0';
idx++;
}
return answer;
}
}
어렵지 않은 문제였지만 문자를 숫자로 변환하면서 -'0' 을 해주는 것에 주의하자
'알고리즘 > Programmers' 카테고리의 다른 글
[프로그래머스] Java Level 1. 두 정수 사이의 합 (0) | 2023.05.25 |
---|---|
[프로그래머스] Java Level 1. 하샤드 수 (0) | 2023.05.25 |
[프로그래머스] Java Level 1. 정수 제곱근 판별 (0) | 2023.05.25 |
[프로그래머스] Java Level 1. 정수 내림차순으로 배치하기 (0) | 2023.05.25 |
[프로그래머스] Java Level1. 문자열을 정수로 바꾸기 (0) | 2023.05.20 |