草庐IT

被2整除

全部标签

java - 优化代码以获取给定范围内可被整数整除的整数个数

给定范围x,y。我需要计算介于两者之间且可被n整除的所有数字。我知道最简单的方法是遍历整个范围for(inti=x;i计数器保存答案。但这对于大范围来说工作起来太慢了。例如x=0和y=3,000,000,000。我确信我可以使用某种关系来减少迭代次数并优化此代码以提高速度。我搜索了但找不到。请任何人帮助我。非常感谢。 最佳答案 这有效:(e+1-s)/d+(e%d.(它使用C语义和整数运算,并假设开始是非负数。s是开始值,e是结束值[包括],d是除数。)更新:更好的解决方案是e/d-(s-1)/d.这是受User448810的启发。

c++ - 二和不能被 K 整除的最大子集

我得到了集合{1,2,3,...,N}。我必须找到给定集合的子集的最大大小,以便子集中任意2个数字的总和不能被给定数字K整除。N和K可以达到2*10^9,所以我需要一个非常快的算法。我只想出了一个复杂度为O(K)的算法,速度很慢。 最佳答案 首先计算所有的集合元素modk.并解决简单问题:找到给定集合的子集的最大大小,使得子集中任意2个数字的总和不等于给定数字K。我把这个集合分成两个集合(i和k-i),你不能同时选择set(i)和set(k-i)。intmyset[]intmodclass[k]for(inti=0;i选择for(i

java - 是否有用于检查数字是否被 2 或 3 整除的位技巧?

我正在寻找等同于(num%2)==0||的按位测试(num%3)==0。我可以将num%2替换为num&1,但我仍然坚持使用num%3和逻辑或。这个表达式也等同于(num%2)*(num%3)==0,但我不确定这有什么帮助。 最佳答案 是的,虽然它不是很漂亮,但您可以做一些类似于旧的“对所有十进制数字求和直到只剩下一个数字”的技巧来测试一个数字是否可以被9整除,除了二进制和被整除3.您也可以对其他数字使用相同的原则,但是许多基数/除数的组合会引入烦人的比例因子,因此您不再只是对数字求和。反正16n-1是可以被3整除的,所以可以用ra

objective-c - 整除后float为0

这可能是一个简单的解决方案,但我无法修复它。我正在除以2个整数:finishedGameFinalScore=[scoreintegerValue];CGFloatinterval=2/finishedGameFinalScore;NSLog(@"interval=%f",interval);日志返回0.000000小数位数有限制吗?我需要保留小数结果。谢谢沙尼 最佳答案 您的代码不起作用的原因是您将一个整数除以另一个整数,然后将结果转换为float。所以你有2(一个整数)和一些其他数字(也是一个整数)。然后用2除以这个数字-这可能

ios - 检查一个整数是否可以被另一个整数整除(Swift)

我需要检查一个整数是否可以被另一个整数整除。如果不是,我想将其四舍五入为最接近的数字倍数。例子:varnumberOne=3varnumberTwo=5numberTwo不是numberOne的倍数,因此我希望它能将numberTwo舍入到6。我该怎么做?谢谢 最佳答案 1)如果要检查或一个整数除以另一个整数:swift5ifnumberOne.isMultiple(of:numberTwo){...}Swift4或以下ifnumberOne%numberTwo==0{...}2)舍入到最接近的倍数的函数:funcroundToCl

c# - 检查数字是否可以被 24 整除

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求提供代码的问题必须表现出对所解决问题的最低限度理解。包括尝试过的解决方案、为什么它们不起作用,以及预期结果。另请参阅:StackOverflowquestionchecklist关闭9年前。Improvethisquestion我想建立一个if函数,它会查看变量是否可以被24整除,如果是则它执行该函数,否则不会,但是逻辑相同,我想看看输出是否是一个完美的数字,例如,如果我们做24/24会得到1,那是一个完美的数字。如果我们做25/24那么它会得到1.041这不是一个完美的数字,下一个完美的数字会在

javascript - 查找变量是否可以被 2 整除

如何判断一个变量是否可以被2整除?此外,如果是,我需要执行一个功能;如果不是,我需要执行另一个功能。 最佳答案 使用模数://Willevaluatetotrueifthevariableisdivisibleby2variable%2===0 关于javascript-查找变量是否可以被2整除,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2821006/

【Python杂记】整除与取模运算

python中的整除(//)与取模(%)1.整除(//):取整除-返回商的整数部分(向下取整)向下取整也就是说结果返回一个不大于(小于等于)商的最大整数。例:9除以2,浮点运算的结果为4.5,向下取整,不大于4.5的最大整数是4,即9//2=4;    -9除以2,浮点运算的结果为-4.5,不大于-4.5的最大整数即-5,因此-9//2=-5。2.取模(%): 取模-返回除法的余数。  对于整数a和b,进行取模运算可以总结分为2个步骤:  1.计算整数商:c=【向下取整】(a // b);  2.计算模:r=a-c* b。key:取模运算的第一步计算整数商的时候是向下取整。例:-3%2,即a=

【Python杂记】整除与取模运算

python中的整除(//)与取模(%)1.整除(//):取整除-返回商的整数部分(向下取整)向下取整也就是说结果返回一个不大于(小于等于)商的最大整数。例:9除以2,浮点运算的结果为4.5,向下取整,不大于4.5的最大整数是4,即9//2=4;    -9除以2,浮点运算的结果为-4.5,不大于-4.5的最大整数即-5,因此-9//2=-5。2.取模(%): 取模-返回除法的余数。  对于整数a和b,进行取模运算可以总结分为2个步骤:  1.计算整数商:c=【向下取整】(a // b);  2.计算模:r=a-c* b。key:取模运算的第一步计算整数商的时候是向下取整。例:-3%2,即a=

c++ - 如何以最快的方式检查给定的数字是否可以被 15 整除?

处理器中的除法需要很多时间,所以我想问一下如何以最快的方式检查数字是否可以被其他数字整除,在我的情况下,我需要检查数字是否可以被15整除。我也一直在浏览网页并发现有趣方法来检查数字是否可以被某个数字整除,但我正在寻找快速选项。注意:因为除法需要很长时间,我正在寻找没有/和%的答案。 最佳答案 为可能前来寻找答案的其他学习者提供强制性答案。if(number%n==0)在大多数情况下,您始终可以这样做,相信现代智能编译器。但这并不意味着您会因为学习有趣的方式而气馁。查看这些链接。Fastdivisibilitytests(by2,3,