https://school.programmers.co.kr/learn/courses/30/lessons/12931?language=java
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 설명
자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
제한사항
- N의 범위 : 100,000,000 이하의 자연수
입출력 예
N | answer |
123 | 6 |
987 | 24 |
나의 문제 풀이
1) 처음에는 배열로 만들어서 전부 더하려고 했다. 그러면 Stream을 import 해야 하고 문제 자체는 그러지 않아도 풀수 있으니 level.1로 나온거 같았다.
2) 그래서 조건식을 찾아보다가 평소에 잘쓰지 않았던 while문이 생각나서 찾아보았다.
3) while 문 안에 다음과 같은 조건식을 기입하였다.
4) 자릿수를 알수 없는 n을 10으로 나눴는데 여기서 나머지는 각각의 자릿수가 되니 answer에 계속 더해 주었다.
5) 자릿수가 10이하 이면 break하였다.
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;
}
}
'코드문제풀이 > JAVA' 카테고리의 다른 글
[자바] 크기가 작은 부분문자열 (0) | 2023.07.09 |
---|---|
[자바] x만큼 간격이 있는 n개의 숫자 (0) | 2023.07.06 |
[자바] 이어 붙인 수 (0) | 2023.07.05 |
[자바] 글자 이어 붙여 문자열 만들기 (0) | 2023.07.05 |
[자바] 문자열 섞기 (0) | 2023.07.05 |