Develop/Algorithm
[프로그래머스] 자릿수 더하기 / Level 1 / JAVA
HongUniverse
2022. 12. 26. 13:23
반응형
✏️ 문제
: 자릿수 더하기
✏️문제 설명
자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
✏️제한사항
N의 범위 : 100,000,000 이하의 자연수
✏️입출력 예
N | answer |
123 | 6 |
987 | 24 |
1) 시도 : 100점
import java.util.*;
public class Solution {
public int solution(int n) {
String numStr = String.valueOf(n);
List<String> strList = Arrays.asList(numStr.split(""));
int sum = strList.stream().mapToInt(Integer::parseInt).sum();
return sum;
}
}
2) 다른 사람 풀이 참조
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;
}
}
3) 셀프 피드백
다른 사람들 풀이 참고했는데 참 똑똑하신것 같다. 당연히 타입을 바꾸는 과정이 있을 거라고 생각했는데, 10으로 나눠서 1의자리 합을 구하는 아이디어도 있다는 것을 알게 되어서 신기했다.
나는 문자열로 변환하고 한자리씩 나우어 리스트에 담고, 스트림을 이용하여 총 합계를 구하였다.
반응형