Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 큰 수를 3으로 나눌 수 있는지 확인

<시간/>

여기에서 숫자가 3으로 나누어 떨어지는지 확인하는 방법을 살펴보겠습니다. 이 경우 숫자는 매우 큰 숫자입니다. 그래서 우리는 숫자를 문자열로 넣습니다.

숫자의 합이 3의 배수이면 3의 배수가 됩니다.

예시

#include <bits/stdc++.h>
using namespace std;
bool isDiv3(string num){
   int n = num.length();
   long sum = accumulate(begin(num), end(num), 0) - '0' * n;
   if(sum % 3 == 0)
      return true;
      return false;
}
int main() {
   string num = "3635883959606670431112222";
   if(isDiv3(num)){
      cout << "Divisible";
   } else {
      cout << "Not Divisible";
   }
}

출력

Divisible