자릿수 더하기 (자바)

김재현·2023년 11월 28일
0

알고리즘 풀이

목록 보기
32/89
post-thumbnail
post-custom-banner

문제

업로드중..

정답 코드

import java.util.*;

public class Solution {
    public int solution(int n) {
        int answer = 0;

        int u = (int) Math.log10(n);

        for(int i=u;i>=0;i--) {
            int a = (int) (n/Math.pow(10,i));
            answer+=a;
            n-=a*Math.pow(10,i);
        }


        return answer;
    }
}

문제에 나와있던 것 그대로, 자릿수로 풀었다.
Math.pow와 Math.log를 이용하여 10의 n승, log10 을 계산.
하지만 이건 사람의 입장에서 풀이한 느낌이 강하다.

다른 사람 풀이

import java.util.*;

public class Solution {
    public int solution(int n) {
        int answer = 0;

        while (n != 0) {
            answer += n % 10;
            n /= 10;
        }

        return answer;
    }
}

하지만 이분께서는 자리수를 코드의 관점에서 해결 했다고 생각한다.
틀에 얽메이지 말자!

profile
I live in Seoul, Korea, Handsome
post-custom-banner

0개의 댓글