목차
#1 9로 나눈 나머지
문제 설명
음이 아닌 정수를 9로 나눈 나머지는 그 정수의 각 자리 숫자의 합을 9로 나눈 나머지와 같은 것이 알려져 있습니다.
이 사실을 이용하여 음이 아닌 정수가 문자열 number로 주어질 때, 이 정수를 9로 나눈 나머지를 return 하는 solution 함수를 작성해주세요.
제한사항
- 1 ≤ number의 길이 ≤ 100,000
- number의 원소는 숫자로만 이루어져 있습니다.
- number는 정수 0이 아니라면 숫자 '0'으로 시작하지 않습니다.
입출력 예
number | result |
"123" | 6 |
"78720646226947352489" | 2 |
#2 코드 및 알고리즘
import java.util.concurrent.atomic.AtomicInteger;
import java.util.stream.IntStream;
class Solution {
public int solution(String number) {
AtomicInteger sum = new AtomicInteger();
IntStream.range(0, number.length()).forEach( (e) -> {
sum.addAndGet(Integer.parseInt(String.valueOf(number.charAt(e))));
});
/*for(int i = 0; i < number.length(); i++)
sum += Integer.parseInt(String.valueOf(number.charAt(i)));*/
return sum.get() % 9;
}
}
풀이:
- 문자열에서 모든 인덱스 안의 값들의 합을 구한다.
- 그 이후에 값들의 합을 9로 나누어 나머지를 구하여 반환한다.
'JAVA > 프로그래머스 코딩 기초 트레이닝' 카테고리의 다른 글
[프로그래머스, LV.0] 접미사 배열 (0) | 2023.06.23 |
---|---|
[프로그래머스, LV.0] 문자열 여러 번 뒤집기 (0) | 2023.06.22 |
[프로그래머스, LV.0] 부분 문자열 이어 붙여 문자열 만들기 (0) | 2023.05.29 |
[프로그래머스, LV.0] 배열 만들기 5 (0) | 2023.05.29 |
[프로그래머스, LV.0] 글자 이어 붙여 문자열 만들기 (1) | 2023.05.21 |