检查在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