🤖Algorithm

[프로그래머스] 자릿수 더하기 Java

Jaeyoung Kim 2022. 7. 19. 17:25
728x90

자릿수 더하기


문제 설명

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


제한사항

  • N의 범위 : 100,000,000 이하의 자연수

입출력 예

N answer
123 6
987 24

입출력 예 설명

  • 입출력 예 #1
    문제의 예시와 같습니다.
  • 입출력 예 #2
    9 + 8 + 7 = 24이므로 24를 return 하면 됩니다.

기본코드

import java.util.*;

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

        // [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
        System.out.println("Hello Java");

        return answer;
    }
}

문제풀이

생각보다 간단하게 해결되었다. 제출하고 한 번에 성공하여 "이게 된다고?"란 생각이 들었다.

가장 먼저 int의 자릿수(길이)를 문자화하여야했는데,

이전에 헤매면서 배웠던 부분이라 금방 해결하였다.

 

더보기

int i = 100000;

String s = " " + i;

System.out.print(s.length()); // 6

그 후부터는 이전 알고리즘 문제에서와 동일하게 10으로 나눈 나머지를 answer에 더해나가면서

n의 값을 10으로 계속해서 나눠주며 자릿수 마다 나머지값을 확인해주었다.


Solution.java

import java.util.*;

public class Solution {
    public int solution(int n) {
        String number = ""+n;
        int answer = 0;
        
        for(int i = 0; i < number.length(); i++){
            answer += n%10;
            n /= 10;
        }
        return answer;
    }
}
728x90