假设我们有3数字N,x而且y总是数字>=1.
N值将大于x和y和x会大于y.
现在我们需要找到1到N之间的所有数字之和,它们可以被x或y整除.
我想出了这个:
sum = 0;
for(i=1;i<=N;i++)
{
if(i%x || i%y)
sum += i;
}
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来找到避免for循环的总和?
我现在已经好好打了很多天,但没有更好的东西.
如果值N具有上限,我们可以使用查找方法来加速该过程.
感谢大家.
我想要一个基于C/C++的解决方案.是否有内置函数来执行此操作?或者我必须编写算法代码?