자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
n을 잘라서 배열로 만든 다음 역순으로 answer에 넣으면 되지 않을까?
class Solution {
public int[] solution(long n) {
int[] answer = {};
long[] num = n.split("");
for(int i = num.length - 1 ; i >= 0 ; i--){
for(int j = 0 ; j < num.length ; j ++){
answer[j] += num[i];
}
}
return answer;
}
}
long 타입은 불가능하다.. 아마 타입을 String 으로 바꿔서 진행해야 할것같다
class Solution {
public int[] solution(long n) {
String num = Long.toString(n);
int[] answer = new int[num.length()];
for(int i = num.length() - 1; i >= 0 ; i--){
answer[num.length() - 1 - i] = num.charAt(i)- '0';
}
return answer;
}
}
String 타입으로 n을 바꾼 다음 String 배열을 역순으로 answer로 하나씩 집어넣었다. 이때, charAt을 이용해서 String → int 타입으로 변환했다 (아스키코드를 사용했으므로 - '0'을 이용해서 숫자로 값을 변환)
숫자
: 48부터 57까지 (0부터 9까지)
영문 대문자
: 65부터 90까지 (A부터 Z까지)
영문 소문자
: 97부터 122까지 (a부터 z까지)
'1'의 아스키 코드 값인 49에서 '0'의 아스키 코드 값인 48을 빼면 숫자 1이 된다.