· 문제 설명
자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
· 제한 조건
n은 10,000,000,000이하인 자연수입니다.
· 입출력 예
n | return |
12345 | [5, 4, 3, 2, 1] |
· Thinking 1
1. n을 일단 String으로 변환해서 자릿값 알아내기
2. int배열 자릿값 만큼의 크기로 만들기
3. int[i] = charAt(length-i) 담기
· 완성 코드
class Solution {
public int[] solution(long n) {
String num = String.valueOf(n);
int[] answer = new int[num.length()];
for (int i = 0; i < num.length(); i++) {
answer[num.length()-1-i] = Character.getNumericValue(num.charAt(i));
}
return answer;
}
}
· 다른 사람의 풀이
class Solution {
public int[] solution(long n) {
int length = Long.toString(n).length();
int[] answer = new int[length];
for (int i = 0; i < length; i++) {
answer[i] = (int) (n % 10);
n /= 10;
}
return answer;
}
}
- 내가 되게 string과 charAt을 좋아하나..?
· 문제 출처
https://programmers.co.kr/learn/courses/30/lessons/12932
'Algorithm > Programmers' 카테고리의 다른 글
정수 제곱근 판별 (0) | 2019.05.31 |
---|---|
정수 내림차순으로 배치하기 (0) | 2019.05.31 |
자릿수 더하기 (0) | 2019.05.31 |
이상한 문자 만들기 (0) | 2019.05.31 |
예산 (0) | 2019.05.31 |
댓글