문제 설명
자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를 들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
제한사항
- N의 범위 : 100,000,000 이하의 자연수
입출력 예
N | answer |
123 | 6 |
987 | 24 |
import java.util.*;
public class Solution {
public int solution(int n) {
int answer = 0;
ArrayList<Integer> arr = new ArrayList<>();
while (n > 0) {
arr.add(n % 10);
n /= 10;
}
for (int i : arr) {
answer += i;
}
return answer;
}
}
while문으로 n이 0보다 클 때 실행을 반복하도록 했습니다. 미리 만들어둔 ArrayList인 arr에 n을 10으로 나눈 나머지를 추가하고 n을 10으로 나누는 것을 반복하여 자릿수별 숫자를 구했습니다. 이후 for문에서는 앞서 while문에서 구한 숫자를 answer에 하나씩 차례로 더해주었습니다.
자릿수 더하기 0단계(같은 풀이)
[프로그래머스 코딩테스트] 자릿수 더하기(Java) https://sigfriede.tistory.com/54
'프로그래머스 > Lv. 1' 카테고리의 다른 글
[프로그래머스 코딩테스트] 숫자 문자열과 영단어(Java) (0) | 2023.04.03 |
---|---|
[프로그래머스 코딩테스트] x만큼 간격이 있는 n개의 숫자(Java) (0) | 2023.04.03 |
[프로그래머스 코딩테스트] 평균 구하기(Java) (0) | 2023.04.03 |
[프로그래머스 코딩테스트] 짝수와 홀수(Java) (0) | 2023.04.03 |
[프로그래머스 코딩테스트] 약수의 합(Java) (0) | 2023.04.03 |