计算固有因子和的函数
function that calculates sum of proper divisors
我在SPOJ上遇到了一个问题,要求用户计算一个数(n)与另一个数(m)的模的除数之和
http://www.spoj.com/problems/HDEVIL/在计算是否使用此函数时,SPOJ给出WA。我找不到这个功能的问题。任何建议都是欢迎和感激的。
int i=0;
ll prod=1;
while(seive[i]*seive[i]<=n)
{
int p=seive[i],j=1;
ll count=1;
while(n%p==0)
{
count+=modpow(p,j,mod);
j++;
n/=p;
}
prod=((prod%mod)*(count%mod))%mod;
i++;
}
if(n>1)
{
prod*=n+1;
prod%=mod;
}
prod为最终和,seve[]存储质数,modpow为幂模函数
求出n的因数,然后用除数求和函数求出n的因数之和,取所有乘积对m取模。在你的问题n <109,因此基于试除法的简单因子函数可能就足够了。
如果你需要额外的帮助,请提问。
相关文章:
- libssh 的函数在构建 libssh 时无法在 Qt 和 cmake 错误中找到
- Visual Studio中的函数声明和函数定义问题
- CUDA内核和数学函数的显式命名空间
- 类C++中的函数问题(LNK2019和LNK1120错误)
- 编译器如何在使用SFINAE的函数和标准函数之间确定两者是否可行
- 如何在jthread中传递带有参数和stop_condition的函数
- 未在此作用域中声明的函数和变量 (C++)
- 如何定义采用最通用数量和最类型的参数的函数
- C++关于指针和使用函数将它们启动到堆的行为究竟是什么?
- C++ 中的函数 GetCursorPos() 和 SetCursorPos() 存在一些问题
- 为什么不允许成员函数和非成员函数之间的函数重载?
- 接收和返回函数指针的函数指针的类型?
- 函数签名与调用的函数不匹配,常量字符[]和字符*之间的区别?
- 我可以将向量作为initial_sum和不同的函数传递给 std::累积吗?
- 区分接受常量参数的函数引用/指针和与函数参数同名的非常量参数
- 类和构造函数中的函数根本不起作用,并且不返回任何错误
- C++ DLL 引用C++.exe中的函数和类
- 为什么 memcpy() 和其他类似的函数使用汇编?
- 如何通过python方法和kwargs来提升python的c++函数和调用
- 计算固有因子和的函数