자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요.
예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
제한 조건
- n은 10,000,000,000이하인 자연수입니다.
class Solution {
public int[] solution(long n) {
int[] answer = new int[String.valueOf(n).length()];
int index = 0;
int temp = 0;
while (n > 0) {
temp = (int) (n % 10);
n = n / 10;
answer[index] = temp;
System.out.println(answer[index]);
index++;
}
return answer;
}
public static void main(String[] args) {
Solution s = new Solution();
Scanner sc = new Scanner(System.in);
Long n = sc.nextLong();
System.out.println(Arrays.toString(s.solution(n)));
}
}
마지막 숫자부터 채우기 위해,
10으로 나눈 나머지를 사용하는 법을 자주 사용해야겠다. 생각이 잘 안나
요새 문자열이랑 char배열 쓰다보니 이런 방법 밖에 생각이 안났음......
public int[] solution(long n) {
int[] answer = {};
String str = new StringBuilder(Integer.toString((int)n)).reverse().toString();
answer = new int[str.length()];
for(int i=0; i<str.length(); i++) {
answer[i] = Integer.parseInt(String.valueOf(str.charAt(i)));
}
return answer;
}
이건 38.5(/50)점 짜리다.
'백엔드개발자 > 알고리즘관련' 카테고리의 다른 글
숫자 문자열과 영단어/ replace(), replaceAll(), replaceFirst() (0) | 2022.05.06 |
---|---|
정수N은 어떤 양의 정수 X의 제곱인가요? (0) | 2022.05.05 |
하나의 정수 각 자리수를 큰 순서대로 (0) | 2022.04.28 |
각자리 숫자의 합 (0) | 2022.04.28 |
등수계산 (0) | 2022.02.23 |