알고리즘
[프로그래머스] 자연수 뒤집어 배열로 만들기(Java) *
muerha
2024. 11. 1. 17:51

나의 풀이
class Solution {
public int[] solution(long n) {
String str_n = Long.toString(n);
int[] answer = new int[str_n.length()];;
int i = 0;
while(n > 0){
answer[i++] = (int) (n % 10);
n /= 10;
}
return answer;
}
}
처음에는 (int) n % 10 으로 썼다가 실패가 떴다.
long을 int로 변환할 때 long 값이 int의 최대값을 초과하면 원래의 값과는 전혀 다른 결과가 나온다고 한다.
다른 사람의 풀이
class Solution {
public int[] solution(long n) {
String a = "" + n;
int[] answer = new int[a.length()];
int cnt=0;
while(n>0) {
answer[cnt]=(int)(n%10);
n/=10;
System.out.println(n);
cnt++;
}
return answer;
}
}