728x90
<코딩 테스트>
정수 n이 매개변수로 주어질 때 n의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요
<나의 풀이 과정>
우선, n 이하의 수를 뽑아내려고 생각했습니다.
그 후 각 자리수의 n을 10으로 나눈 나머지를 answer에 담은 후 계속해서 더하는 코드를
구현하였습니다. n을 계속 10으로 나누다 보면 0으로 나오는 순간까지 반복합니다.
<나의 풀이 코드>
class Solution {
public int solution(int n) {
int answer = 0;
while (n>0) {
answer+= n%10;
n/= 10;
}
return answer;
}
}
<다른사람 풀이 1>
class Solution {
public int solution(int n) {
int answer = 0;
String str = Integer.toString(n);
String[] arr = str.split("");
for(int i = 0; i < arr.length; i++) {
answer += Integer.parseInt(arr[i]);
}
return answer;
}
}
<다른사람 풀이 2>
import java.util.Arrays;
class Solution {
public int solution(int n) {
return Arrays.stream(String.valueOf(n).split("")).mapToInt(Integer::parseInt).sum();
}
}
728x90
'주니어 기초 코딩공부 > JAVA_programmers_코딩테스트' 카테고리의 다른 글
중앙값 구하기_programmers_lev00 (0) | 2022.12.02 |
---|---|
문자열 안에 문자열_programmers_lev00 (0) | 2022.12.02 |
순서쌍의 개수_programmers_lev00 (0) | 2022.12.02 |
배열의 유사도_programmers_lev00 (0) | 2022.12.02 |
짝수는 싫어요_programmers_lev00 (0) | 2022.12.01 |