반응형
안녕하세요! Plitche(플리체)입니다.
이번 포스팅의 주제는 Q1854 : [기초-재귀함수] 재귀로 각 자리 수의 합 리턴하기 (자바, JAVA)입니다.
Intro
Question
문제 설명
입력
long long int 형 정수(n) 1개가 입력된다.
(1 <= n <= 9223372036854775807)
출력
각 자리 수의 합을 출력한다.
예시
- 입력 : 1234
- 출력 : 10
Solution (풀이)
- 풀이 : 메모리 11156, 시간 : 68
public class Answer1 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String number = br.readLine(); // 어짜피 charAt을 이용할것이기 때문에 문자열로 받는다.
// 인덱스, 입력받은 숫자, 총 합
loop(0, number, 0);
}
public static void loop(int index, String number, int total) {
if (index==number.length()) {
System.out.println(total);
} else {
// 각자리 숫자를 charAt을 이용하여 더한다.
loop(index+1, number, total+number.charAt(index)-48);
}
}
}
Ranking(순위)
반응형
'Algorithm > CodeUp' 카테고리의 다른 글
[CodeUp_Java] Q1851 : 재귀로 * n개 한 줄로 출력하기 (2) | 2022.12.06 |
---|---|
[CodeUp_Java] Q1853 : 재귀로 1부터 n까지 합 리턴하기 (0) | 2022.12.05 |
[CodeUp_Java] Q1856 : 계단 뛰어 오르기 (0) | 2022.12.02 |
[CodeUp_Java] Q1855 : 재귀로 n번째 피보나치 수 리턴하기 (0) | 2022.12.02 |
[CodeUp_Java] Q1857 : 서로 다른 n개 중에서 r개 순서없이 고르기 (0) | 2022.12.02 |