🗣️ 메모
✏️ [자릿수 더하기]
문제 설명
정수 n이 매개변수로 주어질 때 n의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요
제한사항
- 0 ≤ n ≤ 1,000,000
입출력 예
n | result |
1234 | 10 |
930211 | 16 |
입출력 예 설명
입출력 예 #1
- 1 + 2 + 3 + 4 = 10을 return합니다.
입출력 예 #2
- 9 + 3 + 0 + 2 + 1 + 1 = 16을 return합니다.
🔥🎉 TRY #1 [실행 결과] String의 길이를 뽑고 substring 활용하기
👉🏻 int형 변수로는 length를 뽑아낼 수 없으니 String 변수를 선언함(Integer.toString(int변수))
👉🏻 반복문으로 String 변수의 length까지 돌림
👉🏻 substring(이하, 미만)으로 숫자 뽑아내기
👉🏻 +=으로 모두 더하기
class Solution {
public int solution(int n) {
int answer = 0;
String n2 = Integer.toString(n);
for(int i = 0; i < n2.length(); i++) {
answer += Integer.parseInt(n2.substring(i, i+1));
}
return answer;
}
}
🔥🎉 TRY #2 [실행 결과] 자릿수를 10으로 나눠 가며 계산하기
👉🏻 먼저 n을 10으로 나눈 나머지를 계산하면 1의 자리가 나옴
👉🏻 10으로 나누면 10의 자리가 1의 자리가 됨
👉🏻 반복
class Solution {
public int solution(int n) {
int answer = 0;
while(n > 0) {
answer += n%10;
n /= 10;
}
return answer;
}
}
출처: 프로그래머스 코딩 테스트 연습,https://school.programmers.co.kr/learn/challenges
코딩테스트 연습 | 프로그래머스 스쿨
개발자 취업의 필수 관문 코딩테스트를 철저하게 연습하고 대비할 수 있는 문제를 총망라! 프로그래머스에서 선발한 문제로 유형을 파악하고 실력을 업그레이드해 보세요!
school.programmers.co.kr