728x90
코드 힌트
정답을 풀 수 있는 2가지 방법
- 문자열로 변환하여 한 자리씩 더하는 방법:
- 숫자를 문자열로 변환하세요.
- 변환한 문자열의 각 문자를 하나씩 순회하면서 숫자로 바꾸고, 이를 모두 더하세요.
- 10으로 나머지를 구하는 방식:
- 주어진 숫자를 10으로 나눈 나머지를 구하세요. 이는 숫자의 마지막 자릿수를 구하는 방법입니다.
- 이 나머지를 결과에 더한 후, 숫자를 10으로 나누어 다음 자릿수를 처리하세요.
- 이 과정을 숫자가 0이 될 때까지 반복하세요.
더보기
1. 문자열로 변환하여 구하는 방법
public class Solution {
public int solution(int n) {
int result = 0;
// 숫자를 문자열로 변환
String str = String.valueOf(n);
// 문자열의 각 문자를 순회하면서 숫자로 변환하여 결과에 더함
for (int i = 0; i < str.length(); i++) {
// 문자를 숫자로 변환하여 더함
result += Integer.valueOf(str.charAt(i) - '0');
}
return result;
}
}
2. 10으로 나머지를 구하는 방법
public class Solution {
public int solution(int n) {
// 결과값을 저장할 변수
int result = 0;
// n이 0보다 큰 동안 반복
while (n > 0) {
// n의 마지막 자릿수를 result에 더함
result += n % 10;
// n을 10으로 나누어 자릿수를 줄임
n /= 10;
}
// 최종 결과값 반환
return result;
}
}
728x90
'프로그래머스(Java) > Level 1' 카테고리의 다른 글
[프로그래머스] 가장 많이 받은 선물 (0) | 2024.07.19 |
---|---|
[프로그래머스] 자연수 뒤집어 배열로 만들기 (0) | 2024.07.17 |
[프로그래머스] 문자열 내 p와 y의 개수 (3) | 2024.07.16 |
[프로그래머스] 신규 아이디 추천 (0) | 2024.07.12 |
[프로그래머스] 체육복 (0) | 2024.07.12 |