less than 1 minute read

자릿수 더하기

문제 설명

정수 n이 매개변수로 주어질 때 n의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요


제한사항

  • 0 ≤ n ≤ 1,000,000

입출력 예

n result
1234 10
930211 16

입출력 예 설명

입출력 예 #1

  • 1 + 2 + 3 + 4 = 10을 return합니다.

입출력 예 #2

  • 9 + 3 + 0 + 2 + 1 + 1 = 16을 return합니다.

나의 풀이 코드

import java.util.*;
class Solution {
    public int solution(int n) {
        int answer = 0;
        String str = "" + n;
        List<String> list = Arrays.asList(str.split(""));
        
        int sum=0;
        for (int i=0; i<list.size(); i++){
            sum += Integer.parseInt(list.get(i));
        }
        System.out.println(sum);
        
        return sum;
    }
}

어제 배운 정수를 스트링으로 쉽게 바꾸는법을 사용했다. 이후 스플릿해서 리스트로 바꾸고 반복문안에서 각 자릿수마다 더해주었다.

배운점

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

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

        return answer;
    }
}

다른사람이 풀은 코드이다.
10으로 나누면서 각 첫번째 자리수를 더하는 코드이다.
여러번 본 코드이지만 다시한번 상기시킬수 있었다.

Leave a comment