반응형
문제
https://school.programmers.co.kr/learn/courses/30/lessons/12931
문제 설명
자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
예를 들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
제한 조건
- N의 범위 : 100,000,000 이하의 자연수
입출력 예
n | return |
123 | 6 |
987 | 24 |
코드
방법 1)
public class Solution {
public int solution(int n) {
int answer = 0;
while (n != 0) {
answer += n % 10;
n /= 10;
}
return answer;
}
}
- answer의 값에 입력 값 n을 10으로 나눈 나머지를 더한다.
- n을 10으로 나눈다.
방법 2)
public class Solution {
public int solution(int n) {
int answer = 0;
String str = String.valueOf(n);
for (int i = 0; i < str.length(); i++) {
answer += str.charAt(i) - '0';
}
return answer;
}
}
- 입력 값 n을 String 타입으로 변환한다.
- answer에 각 자릿수를 char 타입으로 변환하고 '0'을 뺀 값을 더한다.(아스키코드 참고)
반응형
'코딩 테스트(Coding Test) > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 정수 제곱근 판별 - 자바(Java) (0) | 2023.01.20 |
---|---|
[프로그래머스] 자연수 뒤집어 배열로 만들기 - 자바(Java) (0) | 2023.01.19 |
[프로그래머스] 약수의 합 - 자바(Java) (0) | 2023.01.11 |
[프로그래머스] 짝수와 홀수 - 자바(Java) (1) | 2023.01.10 |
[프로그래머스] 평균 구하기 - 자바(Java) (0) | 2023.01.07 |