문제
9로 나눈 나머지 : 문제 링크
문제 분석
- 음이 아닌 정수를 9로 나눈 나머지는 그 정수의 각 자리 숫자의 합을 9로 나눈 나머지와 같은 것이 알려져 있다. 이 사실을 이용하여 음이 아닌 정수가 문자열 number로 주어질 때, 이 정수를 9로 나눈 나머지를 return
- 각 자리 숫자의 합을 저장할 정수형 변수 answer를 0을 초기화. for loop를 통해 문자열 number의 첫번째부터 마지막 인덱스까지 순환하면서, 각 숫자에 '0'을 빼서 정수화 시킨 후 answer에 더하여 저장. loop 종료 후, answer에서 9로 나눈 나머지를 return
풀이
#include <string>
using namespace std;
int solution(string number) {
int answer = 0;
for(int i = 0; i < number.size(); ++i) {
answer += number[i] - '0';
}
return answer % 9;
}