본문 바로가기

Coding Test/프로그래머스 연습

[JAVA] 자릿수 더하기

문제 설명

자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.

 

👽내 코드

import java.util.*;

public class Solution {
    public int solution(int n) {
        int answer = 0;
        String nn = n + "";
        String[] arr = nn.split("");
        
        for(int i=0; i<arr.length; i++){
            answer += Integer.parseInt(arr[i]);
        }

        return answer;
    }
}

 

항상 아는 방법으로..

 

🌈다른 풀이

import java.util.*;

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

        while(true){
            answer+=n%10;
            if(n<10)
                break;

            n=n/10;
        }
        return answer;
    }
}

 

신기한 방법 get!!!!!

이건 n이 10보다 작아질떄까지 계속 나누면서 맨 뒤에 있는 1의 자리부터 나머지로 계산하여 구한다음 더한다.

이게 구할 수도 있구나......와우!!!